2013-09-19 4 views
0

Я пробую цену с Amazon для упражнения.simple_html_dom не нашел мой элемент

 <?php 
     require('simple_html_dom.php'); 
     $get = $_GET['id']; 
     $get_url = 'http://www.amazon.co.uk/s/field-keywords='.$get; 
     echo $get_url; 
     // Retrieve the DOM from a given URL 
     $html = file_get_html($get_url); 

     foreach($html->find('li[class=newp]') as $e) 
     echo $e->plaintext . '<br>'; 

Я попробовал несколько Differents:

Ли [класс = NEWp]

.price

уль [класс = rsltL]

но ничего не возвращает , Что я делаю не так?

Я пытался не возвращался названия, а также:

.lrg.bold

Пробовал Xpath, ничего.

Thanks

+0

Нет проблем здесь. Я получаю результаты. Какой 'id' вы используете? (Я использую URL 'http: // www.amazon.co.uk/s/field-keywords = 11') – Rik

+0

Я использовал черный список – Callombert

+0

@Rik с этим foreach ($ html-> find ('li [class = newp ] ') ​​как $ e) Вы получаете результаты? – Callombert

ответ

0

Ваш код в порядке. Очень вероятно, что ваши настройки PHP являются виновниками.

поставил

error_reporting(E_ALL); 
ini_set('display_errors', '1'); 

в начале вашего PHP скрипт и посмотреть, если он печатает любую полезную ошибку.

Также обратите внимание, что simple_html_dom использует функцию file_get_contents() внутри, чтобы захватывать содержимое страницы. Таким образом, вы можете запустить file_get_contents($get_url), чтобы узнать, что произойдет.

Если эта функция не работает, это определенно ваша настройка PHP. В этом случае я рекомендую запустить другой поток с этой проблемой в заголовке.

Это может помочь, хотя: PHP file_get_contents does not work on localhost

Смежные вопросы