# 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
评论