前言
相信大家在聊天的时候都会斗图吧?尤其是跟喜欢的人,越斗越欢喜,然而有时候斗者斗,你会发现一个很尴尬的问题,就是接不上图或者没图,哈哈,然后乱发图,最后会结束话题(o(╥﹏╥)o,本人就是这样),小编给大家一个福利,嘻嘻,爬取表情包,希望大家早日找到心仪的泡脚凤爪(咳咳,希望她没看到这篇文章,不然我会死定的)。
导言
我们每做一件事情的时候,都要有一个思路和过程,这样我们才会明白下一步要干嘛,下面来说说我这个项目的过程。
需求:爬取斗图网表情包图片
-
第一步 导入第三方库
-
第二步 获取目标网页
-
第三步 解析目标网页
-
第四步 下载目标网页数据
第一步 导入第三方库
import requests
import re
第二步 获取目标网页
定义一个函数 目的:获取每张图片的地址(url)
def get_urls():
response = requests.get(' 案例表情包网站')
第三步 解析目标网页
# 通过正则表达式来匹配不同图片的url .*?
# 共有的内容保留。不同的内容.*? .*表示可以匹配任意数量不换行的字符
url_add = r'<img border="0".*? src="(.*?)"'
# 获取每张图片的地址(url)
url_list = re.findall(url_add,response.text)
# print(url_list)
return url_list
**定义一个函数 目的:下载图片**
def get_gif(url,name):
请求下载的图片的url
response = requests.get(url)
把需要下载的图片保存到F:\Jerry\Spider\data %d整数 %f小数 %s字符串
with open('F:\\nerry\\Spider\\data\\%d.gif'%name,'wb') as ft:
ft.write(response.content)
if __name__ == '__main__':
url_list = get_urls()
第四步 下载目标网页数据
# 把列表当中的数据提取出来并拼接url
# 定义一个变量 目的:给每张图片命名
a = 1
for u in url_list:
com_url = '搞笑图片_gif动态图_微信图片大全_表情党' + u
# 调用下载图片的函数并传递参数
print(com_url)
get_gif(com_url,a)
a += 1
# a = a + 1