gpt4 book ai didi

php - 使用 cURL 下载网站的 HTML 源代码,但得到的文件与预期的不同

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:06:37 26 4
gpt4 key购买 nike

我正在尝试使用 cURL 和 PHP 下载 here 的 HTML 源代码(在浏览器中显示) .但是返回的不是实际的源代码(元刷新链接设置为 0)。

<html>
<head><title>Object moved</title></head>
<body>
<h2>Object moved to <a href="https://login.live.com/login.srf?wa=wsignin1.0&amp;rpsnv=11&amp;checkda=1&amp;ct=1321044850&amp;rver=6.1.6195.0&amp;wp=MBI&amp;wreply=http:%2F%2Fwww.windowsphone.com%2Fen-US%2Fapps%2Fea39f002-ac30-e011-854c-00237de2db9e&amp;lc=1033&amp;id=268289">here</a>.
</h2>
</body>
</html>

我试图将引荐 header 伪装成网站,但我似乎做错了。代码如下。有什么建议么?谢谢

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, 'http://www.windowsphone.com/en-US/apps/ea39f002-ac30-e011-854c-00237de2db9e');
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.6 (KHTML, like Gecko) Chrome/16.0.897.0 Safari/535.6');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_AUTOREFERER, false);
curl_setopt($ch, CURLOPT_REFERER, "http://www.windowsphone.com/en-US/apps/ea39f002-ac30-e011-854c-00237de2db9e");

$html = curl_exec($ch);
curl_close($ch);

最佳答案

添加 curl 选项以跟随重定向:

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

如果是元刷新而不是 HTTP 移动 header ,请参阅: PHP: Can CURL follow meta redirects

如 flesk 所述,您可能还需要存储 cookie。

关于php - 使用 cURL 下载网站的 HTML 源代码,但得到的文件与预期的不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8099919/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com