0

此代码适用于大多数网站,如 google、youtube、facebook 等,但不适用于一些网站,如 technorati:

<?php
$favicon="http://technorati.com/favicon.ico";
$content = file_get_contents($favicon);
file_put_contents('favicon/icon.ico', $content);  

echo "<img src=\"http://localhost/test/favicon/icon.ico\" />";

?>

//输出:

警告:file_get_contents(http://technorati.com/favicon.ico)[function.file-get-contents]:打开流失败:HTTP 请求失败!HTTP/1.1 403 Forbidden in /opt/lampp/htdocs/test/simple.php 第 3 行

http://localhost/test/favicon/icon.ico

如何下载 technorati 的网站图标?

4

2 回答 2

0

尝试模仿浏览器并将用户代理设置为 technorati.com 喜欢的东西:)

ini_set('user_agent', 'Name of your bot');
于 2012-04-25T09:14:44.153 回答
0

看看当你发出请求时会发生什么,例如使用 Fiddler 或 Wireshark。

我的猜测是 Technorati 网络服务器被配置为拒绝自动请求,它可能使用爬虫发送的用户代理检测到。

使用cURL您可以更改用户代理。

于 2012-04-25T09:18:41.547 回答