Php 简单DOM文件\u get\u html不返回任何内容

Php 简单DOM文件\u get\u html不返回任何内容,php,web-scraping,simple-html-dom,Php,Web Scraping,Simple Html Dom,我正试图从一些网站上搜集数据。对于一些网站来说,一切似乎都进展顺利,但对于一个网站来说,它似乎无法获得任何HTML。这是我的代码: <?php include_once('simple_html_dom.php'); $html = file_get_html('https://www.magiccardmarket.eu/?mainPage=showSearchResult&searchFor=' . $_POST['data']); echo $html; ?>

我正试图从一些网站上搜集数据。对于一些网站来说,一切似乎都进展顺利,但对于一个网站来说,它似乎无法获得任何HTML。这是我的代码:

<?php include_once('simple_html_dom.php');

$html = file_get_html('https://www.magiccardmarket.eu/?mainPage=showSearchResult&searchFor=' . $_POST['data']);

echo $html; ?>

我正在使用ajax获取数据。当我在js中记录返回值时,它是完全空的

这可能是因为这个网站是在https上运行的吗?如果是的话,有没有办法解决这个问题?(我尝试将url更改为http,但得到了相同的结果)

更新:

如果我var_转储$html变量,就会得到bool(false)

我的PHP错误日志显示:

[27-Feb-2014 22:20:50 Europe/Amsterdam]PHP警告:文件\u get\u contents():无法打开流:HTTP请求失败!HTTP/1.0 403禁止
在第75行的/Users/leondewit/PhpstormProjects/Magic/stores/simple_html_dom.php中,这是您的用户代理,默认情况下,文件获取内容不会发送,因此:

$url = 'http://www.magiccardmarket.eu/?mainPage=showSearchResult&searchFor=tarmogoyf';
$context = stream_context_create(array('http' => array('header' => 'User-Agent: Mozilla compatible')));
$response = file_get_contents($url, false, $context);
$html = str_get_html($response);
echo $html;

只需尝试标准调试。可能是出了差错。尝试打开错误报告或检查错误日志。尝试回显其他内容,而不是
$html
,以查看是否得到任何结果。另外,可以尝试
var\u dump($html)而不仅仅是回应。用反馈更新我的问题。此外,如果我回显其他内容(如字符串),我会得到正常结果。
403禁止的
错误代码是从您试图联系的服务器(magiccardmarket)发送的,通常在您请求的页面需要登录时发送。他们可能正在阻止来自非浏览器的用户代理的自动请求。您可以尝试更改您的用户代理,但这确实是一个猜测。如果是这样的话,他们阻止它的原因很可能是他们不希望人们滥用他们的网站。谢谢,我会调查的!