写点什么

使用 Python 的 requests 库爬取网页表情包

作者:何极光
  • 2022-10-25
    陕西
  • 本文字数:921 字

    阅读完需:约 3 分钟

使用Python的requests库爬取网页表情包

一、目标网站

喜羊羊QQ表情,可爱的懒羊羊搞笑图片

二、开发思路

  1. 安装项目所需的环境

  2. 导入所需的类库

  3. 定义一个函数用来获取图片

  4. 爬取页面的源代码 https://qq.yh31.com/zjbq/2920180.html

  5. 获取源代码中的所有图片

  6. 筛选出目标图片

  7. /tp/Photo7/ZJBQ/20099/200909291701134159.gif

    https://qq.yh31.com/tp/Photo7/ZJBQ/20099/200909291701134159.gif

  8. 调用获取图片的函数(获取到)

  9. 定义一个函数,用来下载图片

  10. 指定图片的 URL,获取到图片的资源

  11. 指定下载目录,将图片下载到本地

  12. 重命名下载到本地的图片

三、项目源码

# 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
复制代码

四、成果展示


发布于: 刚刚阅读数: 4
用户头像

何极光

关注

还未添加个人签名 2022-10-25 加入

还未添加个人简介

评论

发布
暂无评论
使用Python的requests库爬取网页表情包_Python_何极光_InfoQ写作社区