【问题标题】:Page have reloaded all time when I try to get her via cURL当我尝试通过 cURL 获取她时,页面一直在重新加载
【发布时间】:2017-06-06 10:15:50
【问题描述】:

所以,我需要解析来自http://israelbar.org.il 的一些内容,并用于此 cURL,但是当我运行脚本时 - 浏览器中的选项卡一直重新加载,但没有显示任何内容。

$browser = curl_init();
curl_setopt($browser, CURLOPT_URL, $url);
curl_setopt($browser, CURLOPT_REFERER, $referer);
curl_setopt($browser, CURLOPT_USERAGENT, $agent);
curl_setopt($browser, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($browser, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($browser, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($browser, CURLOPT_CONNECTTIMEOUT, 10); //times out after 11s
curl_setopt($browser, CURLOPT_TIMEOUT, 50); //times out after 51s
curl_setopt($browser, CURLOPT_COOKIEJAR, $cookie_file_path);
curl_setopt($browser, CURLOPT_COOKIEFILE, $cookie_file_path);
$retVal = curl_exec ($browser);
curl_close ($browser);
unset($browser);
return $retVal;

另外,我尝试了 NodeJS,并在控制台中获得了一些对我来说未知的 JS 代码列表。

我认为,主要问题 - 它是不同的标头,我必须通过 cURL 发送相同的标头,就像浏览器一样。

【问题讨论】:

    标签: php node.js parsing curl http-headers


    【解决方案1】:

    您是否尝试过使用 Fiddler 之类的工具捕获工作中的浏览器请求? (http://www.telerik.com/fiddler)。另外,您能否阐明您正在使用的语言和设置(看起来像 PHP?)以及正在重新加载哪个“选项卡”(是您自己的网站吗?)

    其他尝试: - 打电话给你知道会首先工作的网站——以确保你的代码是正确的 - 测试时将超时值调整为更大的值

    【讨论】:

    • 谢谢你,伊恩!是的,我正在使用 PHP (5.6)。代码工作正常,因为我可以毫无问题地解析其他网站。我在标题中看到: Server:Reblaze Secure Web Gateway 而且我认为,解析这个站点 - 这是一项非常困难的任务,因为它有一个安全软件。
    猜你喜欢
    • 1970-01-01
    • 2013-08-23
    • 2013-07-31
    • 2013-10-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-26
    相关资源
    最近更新 更多