使用python下载几个html页面的内容

时间:2014-09-24 14:36:35

标签: python

我是Python的新手,并试图弄清楚如何编写将下载HTML页面内容的脚本。我在想做类似的事情:

Y = 0
X = "example.com/example/" + Y
While Y != 500:
(code to download file), Y++
if Y == 500:
break

所以(Y)是文件名,我需要从example.com/example/1一直下载文件到文件号500,无论文件类型如何。

2 个答案:

答案 0 :(得分:0)

阅读此official docs page

  

此模块提供了一个用于通过万维网获取数据的高级界面。

     

特别是,urlopen()函数类似于内置函数open(),但接受统一资源定位符(URL)而不是文件名。

     

某些限制适用 - 它只能打开用于阅读的网址,并且没有可用的搜索操作。

所以你有这样的代码:

import urllib
content = urllib.urlopen("http://www.google.com").read()
#urllib.request.urlopen(...).read() in python 3

答案 1 :(得分:0)

以下代码应符合您的要求。它将下载500个Web内容并将其保存到磁盘。

import urllib2

def grab_html(url):
    response = urllib2.urlopen(url)
    mimetype = response.info().getheader('Content-Type')
    return response.read(), mimetype

for i in range(500):
    filename = str(i)  # Use digit as filename
    url = "http://example.com/example/{0}".format(filename)
    contents, _ = grab_html(url)
    with open(filename, "w") as fp:
        fp.write(contents)

注意: