聊天没有表情包被嘲讽,程序员直接用python爬取了十万张表情包

  • 前言
  • 分析页面
  • 具体实现
    • 解析页面
      • 获取网页内容
      • 解析网页内容
    • 文件下载
      • 多线程下载
  • 成果
  • 总结

前言

事情要从几天前说起,我有一个朋友,他在和他喜欢的小姐姐聊天时,聊天的气氛一直非常尬,这时他就想发点表情包来缓和一下气氛,但一看自己的表情包收藏都是这样的。。。

。。。这发过去,基本就直接和小姐姐说拜拜了,然后他就向我求救问我有没有表情包,表情包我是没有,但网站有呀,来来,爬虫整起。

分析页面

今天爬取的网站是斗图吧,有一说一表情包是真的多,看这惊人的页数
接下来就该看看怎么拿到表情包图片的url了,首先打开谷歌浏览器,然后点F12进入爬虫快乐模式

然后完成下图的操作,先点击1号箭头,然后再选中一个表情包即可,红色框中就是我们要爬取的对象,其中表情包的src就在里面

现在我们就搞清楚了怎么拿到表情包的url了,就开始写代码了

具体实现

解析页面

获取网页内容

这里就是获取爬取网页的信息

def askURL(url):head = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.106 Safari/537.36"}req = urllib.request.Request(url=url, headers=head)html = ""try:response = urllib.request.urlopen(req)html = response.read()except Exception as result:print(result)return html

解析网页内容

# 取出图片src的正则式
imglink = re.compile(r'<img alt="(.*?)" class="img-responsive lazy image_dta" data-backup=".*?" data-original="(.*?)" referrerpolicy="no-referrer" src=".*?"/>',re.S)
def getimgsrcs(url):html = askURL(url)bs = BeautifulSoup(html, "html.parser")names = []srcs = []# 找到所有的img标签for item in bs.find_all('img'):item = str(item)# 根据上面的正则表达式规则把图片的src以及图片名拿下来imgsrc = re.findall(imglink, item)# 这里是因为拿取的img标签可能不是我们想要的,所以匹配正则规则之后可能返回空值,因此判断一下if (len(imgsrc) != 0):imgname = ""if imgsrc[0][0] != '':imgname = imgsrc[0][0] + '.' + getFileType(imgsrc[0][1])else:imgname = getFileName(imgsrc[0][1])names.append(imgname)srcs.append(imgsrc[0][1])return names, srcs

到现在为止,已经拿到了所有的图片的链接和名字,那么就可以开始下载了

文件下载

多线程下载

因为文件实在有点多,所以最好采用多线程的方式下载,我这里只是给了一个样例,大家按照这个逻辑写一下就好

 pool = ThreadPoolExecutor(max_workers=50)for j in range(len(names)):pool.submit(FileDownload.downloadFile, urls[j], filelocation[j])

成果


总共是爬了十万多张表情包,这次咱也是表情包大户了

总结

很简单的一个爬虫,适合我这样的初学者练练手,如果对爬虫有兴趣的话可以看看我的爬虫专栏的其他文章,说不定也有你喜欢的

爬虫专栏,快来点我呀

两行代码爬取微博热搜,并实现邮件提醒功能,妈妈再也不用担心我吃不到瓜了 爬虫基础

python爬取4k小姐姐图片 人生苦短 我用python

python爬b站视频 人生苦短 我用python

Python爬取美女图片 爬虫基础

有缘再写,侵权立删

聊天没有表情包被嘲讽,程序员直接用python爬取了十万张表情包相关推荐

  1. 聊天没有表情包被嘲讽,用python爬取了十万张表情包

    来源于网络,侵删 前言 事情要从几天前说起,我有一个朋友,他在和他喜欢的小姐姐聊天时,聊天的气氛一直非常尬,这时他就想发点表情包来缓和一下气氛,但一看自己的表情包收藏都是这样的... ...这发过去, ...

  2. python爬取斗图啦表情包并下载到本地

    迫于无聊,又刚好正在学习python,就来记录一篇关于python爬取图片链接下载本地的入门文章... 主要用到的模块: request 和 BeautifulSoup4 开发之前建议先看一下官方给出 ...

  3. Python爬取近十万条程序员招聘数据,告诉你哪类人才和技能最受热捧! | 原力计划...

    作者 | Huang supreme 编辑 | 郭芮 出品 | CSDN博客 图源 | 视觉中国 随着科技的飞速发展,数据呈现爆发式的增长,任何人都摆脱不了与数据打交道,社会对于"数据&qu ...

  4. 熊猫人表情包python 代码_用Python爬取斗图网表情包

    一.介绍 用python处理二进制文件的事情做的比较少,虽然之前有写过分析Ajax抓取今日头条街拍美图,但那个爬虫重在分析Ajax,并没有提到文件路径和文件命名,所以就有了这个爬虫 二.流程 流程一般 ...

  5. Python 爬取近十万条程序员招聘数据,告诉你哪类人才和技能最受热捧! | 原力计划...

    作者 | Huang supreme,责编 | 郭芮 出品 | CSDN博客 封图 | CSDN 下载于视觉中国 随着科技的飞速发展,数据呈现爆发式的增长,任何人都摆脱不了与数据打交道,社会对于&qu ...

  6. 用Python爬取了上W表情包。快拿去欢乐斗图吧~

    导语 "表情包"是一种利用图片来表示感情的一种方式.表情包是在社交软件活跃之后,形成的一种流行文化,表情包流行于互联网上面,基本人人都会发表情. 曾经你是否也有过找不到表情包去应对 ...

  7. python程序员搞笑段子_程序员才能看得懂的段子,内含表情包,吃饭的时候别点!...

    原标题:程序员才能看得懂的段子,内含表情包,吃饭的时候别点! 很多网友都认为程序员必定是非常古板,整天只会敲键盘的码农.其实这种看法是非常片面的.真正优秀的程序员,不仅精通程序的编写,还是某些领域的专 ...

  8. 如何用python做一个会聊天的女朋友_戏精程序员,用python开发了一个女朋友,天天秀恩爱...

    很多人都知道,程序员大部分都是单身狗,然而,无奈Python实在太强大,居然可以用来开发一个女朋友出来. 其实,这个女朋友类似很多视频中,那些假装自己有女朋友或男朋友的人一样,也是在假装哦,但是程序员 ...

  9. python表情包爬虫程序_Python网络爬虫7 - 爬取表情包

    为了逗女朋友开心,想找一堆表情包,那么作为一名程序员,自然是会想到用程序来完成这个事情,而Python爬虫就是一个非常好的方法. 我先找到了一个专门发布表情包的网站,就叫做 分析站点 为了不引起不适, ...

最新文章

  1. linux删除网卡bond,linux下网卡bond的基本配置及错误
  2. SQL中的Exist操作
  3. 【SQL】SQL语句大全(XIMND导图梳理)
  4. boost::hana::integral_c用法的测试程序
  5. tilecache2.11在windows apache2.22安装部署
  6. 一个含n个顶点和e条弧的有向图以邻接矩阵表示法为存储结构,则计算该有向图中某个顶点出度的时间复杂度为
  7. 我给女朋友讲编程html系列(1) -- Html快速入门
  8. springboot之数据校验及多环境切换
  9. android自动化测试录制,(二)屏幕录制在android自动化测试中应用2015.06.29
  10. oracle表的管理,Oracle表的管理
  11. 测试需求分析和测试策略制定
  12. case when then 统计去重数据_数据分析--SQL求职面试题
  13. @Html.Partials 加载分布视图传参数
  14. 使用Origin绘制折线图(入门)
  15. 使用Excel数据分析工具进行多元回归分析的方法
  16. 被动扫描、主动扫描的概念
  17. 请问哪些好用文字转语音软件?
  18. 倒水问题题解(勿喷)
  19. 微软ATC的笔试面试经历
  20. electron自动更新版本electron-updater

热门文章

  1. 栅格矩阵转换成邻接矩阵G2D函数
  2. 1080p60Hz需要传多少数据,怎么计算显示器带宽?(二)
  3. ElementUI的Table组件在无数据情况下让“暂无数据”文本居中显示
  4. 隐写术-PNG文件隐写(一)
  5. 综述|姿态估计方法大盘点
  6. selenium报异常:it is not in the current frame context, or the document has been refreshed
  7. 图像质量评价数据库与图像质量算法性能评价指标
  8. Codeforces Round #633 (Div. 2) C.Powered Addition
  9. java程序填空题输出汤姆猫_《Java语言程序设计(新)》地大模拟
  10. 通过python爬取笔趣阁小说,获取图片保存本地,数据保存mysql