Как получить HTML конкретного div в php? - PullRequest
0 голосов
/ 06 ноября 2019

Я новичок в PHP, поэтому прошу прощения, если я сделал какую-то глупую ошибку. Я пытаюсь соскрести с работы действительно. Я получаю HTML через curl, а затем анализирую его с помощью DOM. Теперь проблема в том, что я хочу получить div с именем класса, но это внутри строки таблицы. Я не знаю, что я делаю не так. Пожалуйста, помогите.

libxml_use_internal_errors(true);
$dom = new DOMDocument;
@$dom->loadHTML($result); 
$xpath = new DOMXpath($dom);
$obj = $dom->getElementById('resultsBody');
if (!empty($obj)) {
    $obj = $obj->getElementsByTagName('div[@class="jobsearch-SerpJobCard"]');
    $ob= $obj->item(0);
    print $ob->nodeValue;
    print_r($obj);
} else {
    echo "No data found";
}
exit;

Также можем ли мы получить конкретный div вместе с его HTML и сохранить в переменной для дальнейшего получения внутри него div?

1 Ответ

2 голосов
/ 06 ноября 2019

Вы можете найти в XPath.

$classname="your-class";
$nodes = $xpath->query("//*[contains(@class, '$classname')]");
...