Я работаю над извлечением данных из страниц вики. Для этого я использую комбинацию php и jquery. Сначала я использую curl в php для получения содержимого страницы и повторения содержимого. Имя файла content.php:
$url = $_GET['url'];
$url = trim($url," ");
$url = urldecode($url);
$url = str_replace(" ","%20",$url);
echo "<a class='urlmax'>".$_GET['title']."</a>";
echo crawl($url);
Затем jQuery используется для поиска совпадающих элементов.
$.get("content.php",{url:"http://en.wikipedia.org/w/index.php?action=render&title="+str_replace(" ","_",data[x]),title:str_replace(" ","_",data[x])},function(hdata){
var imgs = $(hdata).find('a.image img');
var ent = $(hdata).filter('a.urlmax');
ent = $(ent[0]).text();
});
Я смог успешно получить изображения, но для переменной ent, когда я использую find вместо фильтра, и возвращает пустой массив. Работает только фильтр. Почему это?
Изменение: я знаю основное различие между поиском и фильтром. Здесь оба a.image img и a.urlmax являются hdata. Тогда почему find не работает на a.urlmax. Не только a.urlmax он не работает ни на каком другом классе или в id