# 1. 导入第三方的一个http的请求库# pip install requests
# 导入Python的第三方库import requests# 标准库 不需要下载 自带的import re
# 2. 定义一个函数,用来获取每张图片的地址# 1. 首先我们获取到目标页面的源代码数据# 2. 用正则表达式匹配不同图片的路径,产生一个匹配后的结果# 3. 可以通过源代码和匹配后的结果,来找到要爬取图片的地址
# 获取图片的函数def get_urls(): # 第一步 response = requests.get('https://qq.yh31.com/zjbq/2920180.html') # 第二步 # 每张图片共有的内容,保留border="0" # 不同的内容 alt="" width、height src # /tp/Photo7/ZJBQ/20099/200909291701134159.gif # 加括号代表既匹配又保留,不加只是匹配 url_add = r'<img border="0".*?src="(.*?)" />' # 第三步 url_list = re.findall(url_add, response.text) # print(url_list) return url_list
# 3. 下载数据(爬取的图片)的函数def get_gif(url, name): response = requests.get(url) # print(response)
# 下载图片(IO) with open(r'C:\Users\Administrator\Desktop\gif\%d.gif'%name, 'wb') as ft: ft.write(response.content)
if __name__ == '__main__': # 4. 调用函数,调试程序 url_list = get_urls() # print(url_list) name = 1 # 遍历这个图片列表 for url in url_list: # 拼接路径 com_url = 'https://qq.yh31.com' + url # print(com_url) get_gif(com_url, name) # name = name+1 name += 1
评论