飞道的博客

为了防止女朋友怼我,我就先用python爬了3600个怼人表情包等她来战!

401人阅读  评论(0)

女朋友今天不再跟我下五子棋了,(被杀了几十盘还被我指出在什么时候明明有机会赢我),就先睡了!
按照大家的分析,我觉得我很有可能会被怼。(虽然我们之间没有互怼过)!
毛爷爷教导我们:“不打无准备之仗,不打无把握之仗!”
所以我就要提前屯点怼人表情包!
谈,大门敞开!
打,奉陪到底!
代码如下(这次就3600个,不算过分吧!):

import requests
from lxml import etree
 
 
 
#怼人表情包网址http://www.doutula.com/search?type=photo&more=1&keyword=%E6%80%BC%E4%BA%BA&page=8
#规律一眼就发现是改个数字就行了,就用for i inrange()
 
for i in range(1,50):    #上次给女朋友发了20000句情话,你们说发的太多,所以这次就爬50页,也就50*72=3600个表情包,打败她应该够了,不够再爬
    url = "http://www.doutula.com/search?type=photo&more=1&keyword=%E6%80%BC%E4%BA%BA&page=" + str(i)    #用数字拼接网址
    res = requests.get(url).text    #用requests.get()函数获得拼接网址的数据
    #print(res)    #打印显示一下
    res_xpath = etree.HTML(res)    #转换为xpath可用的格式
    # 用xpath提取表情包的具体网址
    bqb_urls = res_xpath.xpath('//*[@id="search-result-page"]/div/div/div[2]/div/div[1]/div[1]/div//img/@data-original')
    for bqb_url in bqb_urls:    #依次循环提取表情包网址
        try:
            res = requests.get(bqb_url).content    #获得二进制数据
            file_name = bqb_url.split('/')[-1]    #表情包名字就取网址中的最后一个
            with open (file_name, 'wb') as f:    #用“wb”模式打开,没有就新建,肯定是需要自动新建的
                f.write(res)    #将获得的二进制数据写到文件中
        except:
            pass    #3600个,失败几个无所谓的,不在乎
print("表情包爬取完成,准备战斗吧!")

我就等着她来和我战斗!
好期待啊,这次该让她见识见识我情话攻势之后的怼人表情包攻势!
各位朋友们也可以准备一些,这样就能打败女朋友了!


转载:https://blog.csdn.net/weixin_44639314/article/details/106799967
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场