今天看啥  ›  专栏  ›  创造太阳工作室

女朋友每晚都给我发诱惑图,我用python搞了更多诱惑图反击她!

创造太阳工作室  · CSDN  ·  · 2020-06-18 04:15

也不知道最近是怎么搞得了,可能女朋友也被疫情影响到了心情吧,现在每晚都要给我发不少诱惑图
在这里插入图片描述
你们这群人想看什么呀?回家换个个光纤吧,网速太差的就加载不出来!
估计是想(baofushehui),作为一个男人,必须坚决反击!
写个小代码,爬了爬美团美食的评论,然后给她说晚安!
代码如下:

import requests
import re
import cv2
from PIL import ImageFont, ImageDraw, Image
import numpy
 
 
#定义一个晚安表情包函数wanan,主要就是在图片上加上“晚安”,这样显得我是在关心她,而不是斗图!
def wanan(file_name):
    bk_img = cv2.imread(file_name)    #读取图片,默认是彩色
    fontpath_wz = "Alibaba-PuHuiTi-Heavy.otf"        #设置需要显示的字体为“阿里普惠字体”,用什么方正啊,一不小心就被告,阿里家的不嫖白不嫖
    font_wz = ImageFont.truetype(fontpath_wz,350)    #创建字体对象,设置字体大小
    img_pil = Image.fromarray(bk_img)    #实现array到image的转换
    draw = ImageDraw.Draw(img_pil)    #创建对象
    draw.text((500,500),  "晚安!", font = font_wz, fill = (255, 255, 255))    #设置文字位置,内容,字体,颜色
    bk_img = numpy.array(img_pil)    # 将信息写入
    cv2.imshow("good night",bk_img)    #展示显示图片
    cv2.imwrite(file_name + "wanan.jpg",bk_img)   #保存图片
 
 
 
 
 
#设置一个请求头来伪装,以突破美团的反爬
headers = {
    'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)Chrome/78.0.3809.100 Safari/537.36',
    'Cookie': '_lxsdk_cuid=1705c1232e5c8-0b3dd2a7bd22a7-3b65410e-1fa400-1705c1232e560; _hc.v=f33fac6e-a350-7eb0-bb31-ac1e31f6293e.1583081446; Hm_lvt_f66b37722f586a240d4621318a5a6ebe=1583081431,1583163970; __utma=211559370.503033648.1583081432.1583081432.1583163971.2; __utmz=211559370.1583163971.2.2.utmcsr=baidu|utmccn=baidu|utmcmd=organic|utmcct=zt_search; ci=1; rvct=1%2C73; _lxsdk=1705c1232e5c8-0b3dd2a7bd22a7-3b65410e-1fa400-1705c1232e560; _lx_utm=utm_source%3Dbaidu%26utm_campaign%3Dbaidu%26utm_medium%3Dorganic%26utm_content%3Dzt_search; client-id=80b56a14-c077-4c81-97f8-c7e6ba86afce; lat=30.47633; lng=114.39492; _lxsdk_s=170c74d7fea-2d8-f79-b1%7C%7C30; uuid=0efec67097ed4dceba5e.1583896774.1.0.0; mtcdn=K; lt=8GRjAM7XkxZcWL24k3Eru8ZATtYAAAAAKgoAALH5-kQry4ohn4eehoxfWaRUoIonADbDqM5EIWtchvxfrTh56O0RajiylAPl1D1dQQ; u=2806660198; n=%E6%9D%8E%E6%99%93%E9%B9%8F614; token2=8GRjAM7XkxZcWL24k3Eru8ZATtYAAAAAKgoAALH5-kQry4ohn4eehoxfWaRUoIonADbDqM5EIWtchvxfrTh56O0RajiylAPl1D1dQQ'
            }
for num in range(1,10):    #依次循环1-10,10页应该够了!不够的话,我再加!不就是改个数字嘛,so easy!
    url = "https://wh.meituan.com/meishi/pn" + str(num) + "/"    #构建拼接一下网址,用于访问
    res =requests.get(url,headers=headers)    #用requests.get()函数访问页面,用headers=headers伪装
    print(res.text)   #打印看一下信息
    shop_ids = re.findall('"poiId":(.*?),"frontImg":',res.text)   #商家的页面都是id不同,所以就提取出来商家的id就可以了
    print(shop_ids)    #看一下商家的ids
    for shop_id in shop_ids:    #依次从商家ids中提取商家id,然后构造网址
        for i in range(0,100,10):    #评论的链接只有商家id和展示数字出现变化(0,10,20,30),因此就再用一个循环来生成(0,10,20……),就搞10页吧,不够了就改数字
            try:
                #构建拼接网址
                shop_url = "https://www.meituan.com/meishi/api/poi/getMerchantComment?uuid=0efec67097ed4dceba5e.1583896774.1.0.0&platform=1&partner=126&originUrl=https%3A%2F%2Fwww.meituan.com%2Fmeishi%2F" + str(shop_id) + "%2F&riskLevel=1&optimusCode=10&id=" + str(shop_id) + "&userId=2806660198&offset=" +str(i) + "&pageSize=10&sortType=1"
                res = requests.get(shop_url,headers=headers)    #访问获得评论信息
                pj_json = res.json()    #转换数据类型为json
                yhpjs = pj_json['data']['comments']    #提取出来用户评论信息
                for yhpj in yhpjs:    #依次循环获得用户评价
                    pic_urls = yhpj['picUrls']    #得到用户评价中的图片链接
                    try:
                        print(pic_urls[0]['url'])
                        picurl = pic_urls[0]['url']    #得到用户评价的图片网址
                        res = requests.get(picurl,headers=headers,timeout=15)    #访问图片网址,设定15秒超时
                        file_name = picurl.split('/')[-1]  # 取每个picurl最后的部分
                        with open (file_name,"wb") as f:    #打开文件名为file_name的文件,相当于新建file_name文件
                            f.write(res.content)    #将获得的图片信息写入进去
                            print("保存完毕!")    #保存完成!
                            wanan(file_name)    #调用wanan()函数来制作表情包
                            print("晚安表情包制作完成!")    #制作表情包完成
                    except :    #出错就pass,数据多,不怕失败!就是这么自信!
                        pass
            except:   #出错就pass,数据多,不怕失败!就是这么自信!
                pass
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58



原文地址:访问原文地址
快照地址: 访问文章快照