如今网上有不少python2写的爬虫抓取网页图片的实例,但不适用新手(新手都使用python3环境,不兼容python2),
因此我用Python3的语法写了一个简单抓取网页图片的实例,但愿可以帮助到你们,并但愿你们批评指正。
1 import urllib.request
2 import re
3 import os
4 import urllib
5 #根据给定的网址来获取网页详细信息,获得的html就是网页的源代码
6 def getHtml(url):
7 page = urllib.request.urlopen(url)
8 html = page.read()
9 return html.decode('UTF-8')
10
11 def getImg(html):
12 reg = r'src="(.+?\.jpg)" pic_ext'
13 imgre = re.compile(reg)
14 imglist = imgre.findall(html)#表示在整个网页中过滤出全部图片的地址,放在imglist中
15 x = 0
16 path = 'D:\\test'
17 # 将图片保存到D:\\test文件夹中,若是没有test文件夹则建立
18 if not os.path.isdir(path):
19 os.makedirs(path)
20 paths = path+'\\' #保存在test路径下
21
22 for imgurl in imglist:
23 urllib.request.urlretrieve(imgurl,'{}{}.jpg'.format(paths,x)) #打开imglist中保存的图片网址,并下载图片保存在本地,format格式化字符串
24 x = x + 1
25 return imglist
26 html = getHtml("http://tieba.baidu.com/p/2460150866")#获取该网址网页详细信息,获得的html就是网页的源代码
27 print (getImg(html)) #从网页源代码中分析并下载保存图片