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

聊天没有表情包被嘲讽,程序员直接用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爬取美女图片 爬虫基础

有缘再写,侵权立删

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/46208.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

搞笑程序员表情包 | 这代码……辣眼睛…..

来源&#xff1a;点墨阁 链接&#xff1a;https://dianmoge.com/article/1574 精彩回顾 ♡ 互联网公司各岗位真实工作内容起底 ♡ 一次尴尬的采访和程序员的传奇脑洞&#xff01; ♡ 天一冷&#xff0c;程序员都穿上格子衫 ♡ 史上最真实的行业鄙视链曝光 ♡ IT公司老板落水&am…

itchat实现微信好友头像爬取并进行拼接成大图当头像

先看一组大图&#xff0c;这是最终效果图&#xff0c;本文讲述如何用代码获取微信好友头像&#xff0c;并拼接成一个图&#xff0c;当做头像&#xff0c;头像效果见下图 当然也可以设置图片排列的个数多少&#xff0c;我是按照每行15个来拼接的 直接上代码&#xff0c;思路很简…

关于微信小程序新版头像昵称API 接口处理

根据微信官方文档的说法&#xff0c;2022年10月之后&#xff0c;原本的获取昵称和头像的api&#xff0c;也就是wx.getUserProfile和wx.getUserInfo将停止支持&#xff0c;在那之后发布和更新的小程序必须停止使用这两个api。 相关公告链接&#xff1a;小程序用户头像昵称获取规…

微信小程序设置头像

最近在开发微信小程序 &#xff0c;今天就记录下关于微信小程序怎么换头像的。 首先&#xff0c;小程序提供了自己的视图层描述语言 WXML 和 WXSS&#xff0c;以及基于 JavaScript 的逻辑层框架&#xff0c;并在视图层与逻辑层间提供了数据传输和事件系统&#xff0c;可以让开发…

维纶触摸屏密码弹出界面

1、界面设计如下 2、用户 3、密码 4、参数设置跳转 5、用户注销

IDEC和泉触摸屏维修HG2F-SS22V HG4F软件通信分析

和泉WindOI-NV3可编程显示器编程软件WindOI-NV3 V5.01是AXIS Touch用的编程软件&#xff0c;可用于执行画面操作所必需的各种设置。首先创建项目&#xff0c;并为将要使用的设备和操作环境进行各种设置。然后布局各种开关和显示部件&#xff0c;以创建将在 Touch 上显示的画面。…

LockBit被破解!日本警方已帮助3家企业恢复数据

据日本媒体报道&#xff0c;日本警察厅已成功解密由LockBit勒索软件组织加密的文件&#xff0c;帮助至少 3 家公司在没有支付赎金的情况下恢复了数据。 反恶意软件供应商 Malwarebytes 最近表示&#xff0c; LockBit 是2022 年最多产的勒索软件团伙&#xff0c;在全球范围内进行…

关于Oracle 19c登陆OEM,输入正确账号密码后,输入框清空,无法登陆问题

安装好Oracle 19c&#xff0c;使用https://localhost:5500/em登陆OEM&#xff0c;输入正确账号密码后登陆&#xff0c;没有任何报错&#xff0c;但输入框清空&#xff0c;依旧停留在下图的登录界面&#xff0c;始终登录不上。 尝试很多方法后发现把localhost换成127.0.0.1就可登…

Lab: Username enumeration via account lock账户锁定限制的暴力破解靶场复盘

靶场内容 This lab is vulnerable to username enumeration. It uses account locking, but this contains a logic flaw. To solve the lab, enumerate a valid username, brute-force this user’s password, then access their account page. Candidate usernames Candida…

汉仪股份通过注册:年营收2.2亿 谢立群控制公司35%股权

雷递网 雷建平 7月14日报道 北京汉仪创新科技股份有限公司&#xff08;简称&#xff1a;“汉仪股份”&#xff09;日前通过注册&#xff0c;预计近期在深交所上市。 汉仪股份计划募资5.36亿&#xff0c;其中&#xff0c;2.09亿用于汉仪字库资源平台建设项目&#xff0c;1.18亿用…

设备指纹详解之识别垃圾账号

互联信息平台经常莫名出现牛皮癣信息&#xff0c;社交媒体下面出现大量廣告评论&#xff0c;电商平台出现大量哄抢福利优惠的账号....这表明&#xff0c;平台上有一大批垃圾账号。 垃圾账号多为批量注册&#xff0c;不仅可用于发布信息、发布虚假p评论&#xff0c;更会把注册成…

SAP 账号被锁定,显示无法再进行口令登录的解决办法

当多人使用同一SAP账号时&#xff0c;可能会出现SAP账号被锁定的情况&#xff0c;状态栏显示&#xff1a;无法再进行口令登录-尝试失败次数过多&#xff0c;如下图所示&#xff1a; 此处我遇到的操作环境&#xff1a;SAP Logon 740 一、登录超级管理员账号(有两个账号-可自行百…

Oracle数据库账号被锁了怎么解锁

一、快速解决方法&#xff08;推荐&#xff09;&#xff1a; 1.以管理员身份登录sys用户&#xff1b; 2.解锁用户&#xff1a;ALTER USER ZHB(用户名) ACCOUNT UNLOCK; 3.修改密码&#xff1a;alter user ZHB identified by ZHB; 4.连接数据库&#xff1a;conn ZHB/ZHB. 二、…

三菱Q PLC解密 用户名功能块FB破解

1.对GX-WORK2软件在进行三菱Q系列编程&#xff0c;进行工程或者内部FB功能加密&#xff0c;可通过借助数据分析器对程序内部的数据分析&#xff0c;并定位关键词汇&#xff0c;破解内部加密逻辑&#xff1b; 2.有需求破解可进行深入探讨交流&#xff1b;

怎样写好一本书

如果把“怎样写好一本书&#xff1f;”这个问题抛给ChatGPT&#xff0c;他的回答仍然像模像样。 虽然他回答的几点都没有错&#xff0c;但是&#xff0c;我个人认为&#xff0c;如果你想要写一本书并出版&#xff0c;那么首先应该考虑的是找一家出版社合作。毕竟&#xff0c;出…

CiteSpace作者合作网络分析-web of science文献

欢迎关注公众号&#xff0c;DataDesigner&#xff0c;让我们一起白话机器学习。 一 、安装环境 Citespace下载网址&#xff1a;citespace官方下载网址&#xff0c;需要提前安装jdk环境&#xff08;官网也提供&#xff09; 二、web of science 导出数据 三、citespace操作 将o…

citespace wos文献处理

参考视频地址&#xff1a;基于Web Of Science的CiteSpace的基本操作_哔哩哔哩_bilibili基于CiteSpace对WOS的数据进行文献计量学方向的基本教学操作。更多操作可以参考官方中文指南。提取链接&#xff1a;https://pan.baidu.com/s/1Uia0tVAas-u5QmdQbEy0IQ 提取码&#xff1a;6…

参与微软Docs翻译

上一篇博客介绍了MLCP的翻译内容&#xff0c;本次介绍如果参与微软Docs翻译&#xff0c;微软Docs是微软的技术文档网站&#xff0c;里边有各种产品技术的文档说明介绍&#xff0c;但是里边的内容多是机器翻译的&#xff0c;所以翻译效果不是很好&#xff0c;因为微软开放了编辑…

【Transfer Learning】泛化到未知域:域泛化 (Domain Generalization) 综述论文

论文名称&#xff1a;Generalizing to Unseen Domains: A Survey on Domain Generalization 论文下载&#xff1a;https://arxiv.org/abs/2103.03097 论文年份&#xff1a;2021 论文被引&#xff1a;78&#xff08;2022/05/07&#xff09; 论文代码&#xff1a;https://github.…

关于建立开放的学术论文共享平台的倡议

如果您赞同&#xff0c;欢迎动动手指转发&#xff01; 近日“中科院因续订费用不堪重负&#xff0c;停用中国知网数据库”的消息让我们大吃一惊。中科院是我国论文成果产出最多的单位&#xff0c;据传闻中科院每年要花千万元购买知网里的论文访问权限。且不论里面的版权细节&am…