手把手教你用Python做一个哄女友神器,小白可上手

640?wx_fmt=png


640?wx_fmt=jpeg


来源 | 大数据文摘(ID:BigDataDigest

作者:诗风悠存、蒋宝尚


哄女朋友最高的境界是什么?


除了用心之外,每天不重复的甜言蜜语必然是少不了的。虽然语文老师上学的时候也教了一些东西,但是日子长了必然“江郎才尽”。


大家都是混科技圈的,借助自动化的手段能不能一次性的解决问题呢?


嗯,显然是可以的。Github作为全球最大的同性交友网站,小伙伴们不仅可以在上面交流编程技巧,还能学到如何开发一个自动哄女友神器。


640?wx_fmt=png


先附上Github地址:

https://github.com/sfyc23/EverydayWechat


这个自动给女友发送微信暖心话的项目,已经连续霸榜Github趋势榜好几天了。作者用Python3和Itchat微信接口开发了一款小工具,可以定时给朋友发送每日天气、提醒、每日一句。通过调用图灵机器人,也可以智能自动回复信息。


操作简单且容易上手,即使是小白,只要配置好了Python环境,安装好必要的Python库,代码下载之后,只要CMD一下即可实现。


在手把手教大家操作之前,文摘菌先带大家看下效果~


640?wx_fmt=jpeg


首先,我定的时间是22:20,一到时间文摘菌的账号就收到了发送的信息,包括英文和中文情话。北京的天气以及在一起的多少天。


调用图灵机器人之后,两个账号便可以对话,图灵机器人还算强大,当我发送:这是个测试之后,图灵机器人回复:你不放心我吗?☹☹☹☹


注:这个小工具的项目中的天气信息来自SOJSON API接口,暖心情话来自金山词霸上面的每日一句,带英文的哟~图灵机器人使用需要申请密钥,每天免费数量只有100条。如果使用超了。可使用青云客智能聊天机器人,这个不限制次数。


640?wx_fmt=png


手把手教学实现哄女友神器


来吧,先视频演示一下使用教程~



首先,把Python安装好,并配置好环境,个人建议新手安装anaconda,具体安装教程,可自行谷歌搜索~


然后安装必要的Python库,环境配置好的同学可以直接用pip install +库名 进行安装。必须安装的库为:requests、beautifulsoup4、itchat、apscheduler、pyyaml、lxml、simplejson。记住了,小伙伴,一个库都不能少哟~


然后进入Github地址下载项目的全部文件(就是这么简单粗暴),解压过后,找到 _config.yaml 用Python IDE打开。然后进行一系列的配置~


640?wx_fmt=jpeg

就是这个文件


640?wx_fmt=png


一、配置自动回复机器人。


1.开启自动回复:

640?wx_fmt=png

将 is_auto_relay 设置为:True。


2.配置图灵机器人:


640?wx_fmt=png


打开图灵机器人官网:http://www.turingapi.com 进行注册。

创建机器人,得到 apikey,userid。


apikey,userid填入到 _config.yaml 文件中的:

turing_conf:

 apiKey: '你所获取apiKey'

 userId: '你所获取的userId'


3. 指定自动回复的好友名单:

640?wx_fmt=png


# 指定自动回复的好友名单。

auto_reply_names:

 - '好友1'

 - '好友2'


注意:

  1. 只能自动回复文字类消息;

  2. 群消息自动回复还未现实。(待完成);

  3. 如果消息发送太频繁,微信会限制登录网页端登录。放心,并不会封号;

  4. 并不是对所有人自动回复,只是回复auto_reply_names中的人。

  5. 当没有图灵机器人 apikey 与 UserId,或者数量超出时。会使用备用的青云客智能聊天机器人获取数据。


640?wx_fmt=png


二、配置定时提醒


1.开启并设置提醒时间:

 640?wx_fmt=png

如:

alarm_info:

 is_alarm: True

 #定时发送时间

 alarm_timed: '9:30'


2.填写需要发送的好友。.


640?wx_fmt=jpeg


如:

girlfriend_infos:

 - #女友微信昵称或者备注名,不能输入微信号。

   wechat_name: '文摘菌'

   #女友所在城市,用于发送天气。(可空)

   city_name: '北京'

   # 从那天开始勾搭的(可空)(最终效果为:宝贝这是我们在一起的第 111 天)

   start_date: '2019-06-13'

   # 后缀(可空)

   sweet_words: '来自最爱你的我。'


 #如果你有多个人需要发送,则参照这个样式,复制即可

 #如不需要,则删除或注解下面所有的数据

 - wechat_name: 'happy'

   city_name: '朝阳区'

   start_date: '2018-11-11'

   sweet_words: '来自你俊美的老公。'


然后,直接将run.py文件直接拖到命令窗口界面(视频中有演示),会出现二维码,扫描之后,实现网页登录。如下☟


640?wx_fmt=png


发送成功如下☟

640?wx_fmt=png


自动回复成功如下☟


640?wx_fmt=png


注意事项:

  • 检查是否是最新的代码,检查是否是 Python3.5+,检查依赖有没有安装完整。

  • 先检查微信是否可登录 微信网页版,如网页端不能用,此项目也不能用。

  • 请更新你的 itchat 为最新版本。

  • 与微信相关的可以先去 itchat issues 是否有相似问题。

  • 微信名只能是昵称或者备注名,不能输入微信号。


在这里,文摘菌不介绍代码逻辑,感兴趣以及有能力的同学可以去作者Github查看哟~


最后,再次给出Github地址:

https://github.com/sfyc23/EverydayWechat


往期精选


640?wx_fmt=png

640?wx_fmt=png

640?wx_fmt=png

- 加入社群吧 -

640?wx_fmt=png

640?wx_fmt=png

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
非常好的问题!以下是一个简单的手把手教程,介绍如何使用Python实现人脸识别。 1. 安装必要的库 首先,您需要安装OpenCV和face_recognition库。您可以使用以下命令在终端上安装它们: ``` pip install opencv-python pip install face_recognition ``` 2. 准备样本图像 您需要准备一些人脸图像,以便训练和测试您的模型。您可以从互联网上下载一些图像,或者使用您自己的照片。将这些图像保存在一个文件夹中,文件夹的名称应该是人物的名字。 3. 训练模型 接下来,您需要训练一个模型来识别人脸。您可以使用face_recognition库中的train函数来训练模型。以下是一个简单的代码示例: ``` import os import face_recognition # 从文件夹中加载人脸图像并进行训练 def train_faces(directory): known_faces = [] known_names = [] for filename in os.listdir(directory): image = face_recognition.load_image_file(directory + "/" + filename) face_encoding = face_recognition.face_encodings(image)[0] known_faces.append(face_encoding) known_names.append(filename.split(".")[0]) return known_faces, known_names # 训练模型 faces_dir = "./faces" known_faces, known_names = train_faces(faces_dir) ``` 该函数将从指定的文件夹中加载所有人脸图像,并使用face_recognition库的face_encodings函数将每个图像编码为一个128维向量。然后,它将这些向量存储在known_faces列表中,并将每个人物的名称存储在known_names列表中。 4. 进行人脸识别 现在,您已经训练好了模型,可以开始进行人脸识别了。以下是一个简单的代码示例: ``` import cv2 import face_recognition # 打开摄像头 video_capture = cv2.VideoCapture(0) # 对每一帧进行处理 while True: # 获取当前帧 ret, frame = video_capture.read() # 将当前帧转换为RGB格式 rgb_frame = frame[:, :, ::-1] # 在当前帧中查找所有人脸位置 face_locations = face_recognition.face_locations(rgb_frame) # 对每个人脸进行编码 face_encodings = face_recognition.face_encodings(rgb_frame, face_locations) # 对于每个编码,查找最佳匹配 for face_encoding in face_encodings: matches = face_recognition.compare_faces(known_faces, face_encoding) name = "Unknown" # 如果有一个匹配,则使用匹配的名称 if True in matches: first_match_index = matches.index(True) name = known_names[first_match_index] # 在人脸周围绘制一个矩形和名称 top, right, bottom, left = face_location cv2.rectangle(frame, (left, top), (right, bottom), (0, 0, 255), 2) cv2.putText(frame, name, (left, top - 10), cv2.FONT_HERSHEY_SIMPLEX, 0.75, (0, 0, 255), 2) # 显示当前帧 cv2.imshow('Video', frame) # 按'q'键退出循环 if cv2.waitKey(1) & 0xFF == ord('q'): break # 关闭摄像头和窗口 video_capture.release() cv2.destroyAllWindows() ``` 该代码将打开计算机上的摄像头,并对每一帧进行处理。它将使用face_recognition库的face_locations函数查找每个帧中的所有人脸位置,然后使用face_encodings函数对每个人脸进行编码。接下来,它将对每个编码进行比较,并使用最佳匹配的名称来标记每个人脸。最后,它将在每个人脸周围绘制一个矩形和名称,并在屏幕上显示当前帧。 这就是用Python实现人脸识别的基本步骤。当然,这只是一个简单的示例,您可以根据自己的需求进行修改和扩展。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值