1 import urllib.request # 连接网络 2 import urllib.parse # 爬虫传参数 3 import json # json解析结果 4 import re # 正则表达式 5 import math # 生成随机数 6 7 url = ‘‘ # 爬虫入口链接 8 data = {} # 字典类型的参数 9 10 data = urllib.parse.urlencode(data).encode(‘utf-8‘) # 处理参数 11 12 req = urllib.request.Request(url,data) # 请求 13 req.add_header(‘User-Agent‘, ‘fake-client‘) # 添加头信息 14 15 res = urllib.request.urlopen(req) # 获得响应信息 16 html = res.read().decode(‘utf-8‘) # 读取响应信息,得到html页面信息 17 18 # 正则表达式中如果有一个括号,那么匹配的内容就取括号里的那段返回列表, 19 # 如果有多个括号,那么返回的是元组列表 20 req = re.compile(r‘<img.+?src="(.+?\.jpg)" width‘) # 正则表达式匹配页面中的图片链接 21 22 urlsImg = re.findall(req,html) # 从html中获取所有图片链接 23 24 for urlImg in urlsImg: 25 response = urllib.request.urlopen(urlImg) # 获取链接响应 26 img = response.read() # 读取响应信息为二进制信息 27 with open(‘img_%f.jpg‘%(math.random()),‘wb‘) as f: 28 f.write(img) # 将二进制信息写到xxx.jpg图片里