我正在尝试使用curl从网站上获取内容。我得到的错误是。
“在访问roosterteeth.com之前检查浏览器”
我尝试在curl中更改不同的属性,但仍然没有运气。我曾尝试使用 PHP Simple HTML Dom Parser ,但再次没有运气。
下面是我目前的代码。
<?php
$divContents = array();
$userAgent = 'Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Firefox/31.0';
$html = curl_init("http://roosterteeth.com/home.php");
curl_setopt($html, CURLOPT_RETURNTRANSFER, true);
curl_setopt($html, CURLOPT_BINARYTRANSFER, true);
curl_setopt($html, CURLOPT_USERAGENT, $userAgent);
curl_setopt($html, CURLOPT_SSL_VERIFYPEER, false);
$content = curl_exec($html);
foreach($content->find("div.streamIndividual") as $div) {
$divContents[] = $div->outertext; }
file_put_contents("cache.htm", implode(PHP_EOL, $divContents));
$hash = file_get_contents("pg_1_hash.htm");
$cache = file_get_contents("cache.htm");
if ($hash == ($pageHash = md5($test))) {
} else {
$fpa = fopen("pg_1.htm", "w");
fwrite($fpa, $cache);
fclose($fpa);
$fpb = fopen("pg_1_hash.htm", "w");
fwrite($fpb, $pageHash);
fclose($fpb);
}
?>
由于查找命令无法获取任何内容,上面的代码显示了不同的错误。下面的代码显示了我从网站获得的错误。
<?php
$divContents = array();
$userAgent = 'Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Firefox/31.0';
$html = curl_init("http://roosterteeth.com/home.php");
curl_setopt($html, CURLOPT_RETURNTRANSFER, true);
curl_setopt($html, CURLOPT_BINARYTRANSFER, true);
curl_setopt($html, CURLOPT_USERAGENT, $userAgent);
curl_setopt($html, CURLOPT_SSL_VERIFYPEER, false);
$content = curl_exec($html);
echo $content;
?>
我对这个错误的预感是服务器认为我是一个机器人(我不会责怪它相信)。我用curl看看我是否可以假装成一个客户并绕过检查器但是没有成功。我希望有人可以对此有所了解。
如果出现视觉错误,请点击此link.
感谢您的时间:)
答案 0 :(得分:-1)
如果您尝试访问的网站使用wordpress,那么它肯定会出现安全问题。它&#39; WP的已知恶意修改,并将用户重定向到某些不同的站点。所以在这种情况下问题不在您的代码中。