- 思路分析:
- 我们要获取一个web的图片,首先要获取该网页的代码,所以先定义函数getHtml(url)来获取html
- 接着我们需要对网页代码进行分析,定义函数getImgUrl(html),以便获取图片地址
- 最后一步,把列表里的图片地址信息下载下来就行
- 注意:python 3.x 和 python 2.x 的区别,例如在编码的处理和库的引用
import re
import urllib.request
#获取网页的代码
def getHtml(url):
page = urllib.request.urlopen(url)
html = page.read()
return html
#获取图片地址
def getImgUrl(html):
reg = r'src="(.*?)" alt'
imgList = re.findall(reg,html)
return imgList
#下载图片
html = getHtml("https://jackpon.github.io/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/2017/09/13/%E7%BA%BF%E6%80%A7%E8%A1%A8/#")
html = html.decode('UTF-8')
img = getImgUrl(html)
x = 0
for i in img:
f = open("pic/"+str(x)+".jpg", 'wb')
f.write((urllib.request.urlopen(i)).read()) #核心代码
f.close()
x += 1
print("All Done")