使用wget伪造浏览器?

时间:2017-04-03 10:59:57

标签: wget

我想抓取一个网站来构建其站点地图。

问题是,该站点使用htaccess文件来阻止蜘蛛,因此以下命令仅下载主页(index.html)并停止,但它确实包含指向其他页面的链接:

wget -mkEpnp -e robots=off -U Mozilla http://www.acme.com

由于使用浏览器访问网站的其余部分没有问题,我认为“-e robots = off -U Mozilla”选项不足以让wget伪装成浏览器。

我还应该了解其他选择吗? wget是否自己处理cookie?

谢谢。

-

编辑: 我将这些添加到wget.ini,但无济于事:

hsts=0
robots = off
header = Accept-Language: en-us,en;q=0.5
header = Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
header = Connection: keep-alive
user_agent = Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:40.0) Gecko/20100101 Firefox/40.0
referer = /

-

编辑:找到它。

主页中链接的页面位于远程服务器上,因此wget会忽略它们。只需添加“--span-hosts”告诉wget去那里,然后添加“-D www.remote.site.com”,如果你想限制蜘蛛到那个域。

1 个答案:

答案 0 :(得分:11)

您可能希望将User-Agent设置为不仅仅是Mozilla,例如:

wget --user-agent="Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0"