Простая проблема HTML DOM

При использовании библиотеки Simple HTML DOM я столкнулся с проблемой на некоторых веб-сайтах. Когда я попытался загрузить следующий URL-адрес http://www.t-mobile.com/shop/phones/cell-phone-detail.aspx?cell-phone=HTC-One-S-Gradient-Blue&tab=reviews#BVRRWidgetID

Мой код PHP:

<?php

include "simple_html_dom.php";

$html=new simple_html_dom();
$url="http://www.t-mobile.com/shop/phones/cell-phone-detail.aspx?cell-phone=HTC-One-S-    Gradient-Blue&tab=reviews#BVRRWidgetID";
$html->load_file($url);
echo $html;

?>

PHP-скрипт не выдает ошибок, но каждый раз показывает следующий контент.

Unsupported Browser
It appears that you are viewing this page with an unsupported Web browser. This Web site works best with one of these supported browsers:

Microsoft Internet Explorer 5.5 or higher
Netscape Navigator 7.0 or higher
Mozilla Firefox 1.0 or higher

If you continue to view our site with your current browser, certain pages may not display correctly and certain features may not work properly for you.

В чем проблема? Есть ли у Simple HTML DOM ограничения? Есть ли другой способ решить эту проблему?


person KK2019    schedule 12.06.2012    source источник
comment
Ваша первая проблема — парсинг веб-сайта. Но давайте забудем об этом, я думаю, вам нужно установить правильный юзерагент   -  person Nicolás Torres    schedule 12.06.2012


Ответы (3)


Некоторым веб-сайтам не разрешено удалять их содержимое напрямую.

вы можете использовать curl для извлечения html-контента, а затем использовать load() объекта dom.

я надеюсь, что это работает для вас.

person ankit shah    schedule 06.11.2012

Просто настройте свой USERAGENT в запросе simple_html_dom:

# Creating useragent array
$useragent = array("http" => "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6");

# Creating a line from array
$useragent = stream_context_create($useragent);

# Starting Simple_HTML_Dom with our useragent
$html = file_get_html($urlCategory, $useragent)

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

person Vladimir    schedule 31.10.2015

установить пользовательский агент

$context = stream();
stream($context, array('user_agent' => 'Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6\r\n'));
file_get_html('http://www.t-mobile.com/shop/phones/cell-phone-detail.aspx?cell-phone=HTC-One-S-    Gradient-Blue&tab=reviews#BVRRWidgetID', 0, $context);
person Tudor    schedule 21.10.2016