Я хочу получить удаленное содержимое html, которое на «li», с пространственным именем класса и дочерними элементами em, используя div.
Мой удаленный контент похож на этот
<UL>
<li class = "user">
<div class = "name"> My Name 1 </ div>
- Шифровать html-код в исходном виде
- PHP, передающий несколько переменных на нескольких страницах
- JQuery .on ('click') не работает в DataTables 2-я страница или строки за 11
- Формат номера кредитной карты
- Как предотвратить появление форм из опорожнения, отправив форму в html?
<div class = "rep"> 20 </ div>
</ Li>
<li class = "user">
<div class = "name"> My Name 2 </ div>
<div class = "rep"> 23 </ div>
</ Li>
<li class = "user">
<div class = "name"> My Name 3 </ div>
<div class = "rep"> 40 </ div>
</ Li>
</ UL>
После получения их данных это должно быть так.
[Мое имя 1,20]
[Мое имя 2,23]
[Мое имя 3,40]
Благодарю.
Извините за плохого английского
Примечание. У вас больше контента, чем на удаленной странице.
Используйте CURL для чтения удаленного URL-адреса для извлечения HTML-кода.
$url = "http://www.example.com"; $curl = curl_init($url); curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE); $output = curl_exec($curl); curl_close($curl)
Затем используйте PHP-модель объекта DOM для анализа HTML.
Например, чтобы получить все теги <h1>
из источника,
$DOM = new DOMDocument; $DOM->loadHTML( $output); //get all H1 $items = $DOM->getElementsByTagName('h1'); //display all H1 text for ($i = 0; $i < $items->length; $i++) echo $items->item($i)->nodeValue . "<br/>";