使用 urllib.urlretrieve('http://page.com', 'page.html') 我可以保存索引页和 page.com 的索引。 urlretrieve 是否处理类似于 wget -r 的内容,让我下载整个网页结构以及 page.com 的所有相关 html 文件?

问候

最佳答案

不直接。

如果您想对整个站点进行蜘蛛爬网,请查看机械化:http://wwwsearch.sourceforge.net/mechanize/

这将让您加载页面并跟踪其中的链接

就像是:

import mechanize
br = mechanize.Browser()
br.open('http://stackoverflow.com')
for link in br.links():
    print(link)
    response = br.follow_link(link)
    html = response.read()
    #save your downloaded page
    br.back()

就目前而言,这只会让您获得离起点一个链接的页面。不过,您可以轻松地调整它以覆盖整个站点。

如果您真的只想镜像整个站点,请使用 wget。仅当您需要进行某种巧妙的处理(处理 javascript、有选择地跟踪链接等)时,才在 python 中执行此操作才值得

关于Python - 整个网页的 urlretrieve,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9910916/

10-12 21:05