Я работаю над получением данных со страниц вики. Для этого я использую комбинацию 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 вместо filter, она возвращает пустой массив. Работает только фильтр. Почему это?
Изменить :Я знаю основную разницу между поиском и фильтрацией. Здесь и a.image img
, и a.urlmax
являются потомками hdata
. Тогда почему find не работает на a.urlmax
. Не только a.urlmax
он не работает ни с каким другим классом или идентификатором