点击上方“Python爬虫与数据挖掘”,进行关注
回复“书籍”即可获赠Python从入门到进阶共10本电子书
今
日
鸡
汤
雕栏玉砌应犹在,只是朱颜改。昨天在技术群里问大家七夕节礼物准备好了吗?大多数男程序员回复姿势都是这样的:
程序员有女朋友?
new 一个就行。Python 只要内存够,想 new 多少个对象都不是问题。
由于行业环境的原因,程序员单身的确实多,这也是程序员的世纪难题。
今天,不是给大家发对象,只教大家方法。今天教大家怎么用 Python 给心动的人每天定时发早安或者晚安。
前提条件是,你得有一个心动对象。哇,我连心动对象都没有怎么办?骚年,那你还不赶紧行动,去寻找你的心动的 TA。
好了,直接进入今天的主题。
找对象环境
语言:Python3
编辑工具:Pycharm
导包
wxpy:操作微信的库,机器人陪你唠嗑那篇文章也用到过。
requests:用来请求目标网站。
Timer:定时器,是 Thread 的派生类,用于在指定时间后调用一个方法。
from wxpy import *
import requests
from threading import Timer
登录微信
Bot 对象,用于登陆和操作微信账号,涵盖大部分 Web 微信的功能。cache_path,设置当前会话的缓存路径,并开启缓存功能,为 None (默认) 则不开启缓存功能。开启缓存后可在短时间内避免重复扫码,缓存失效时会重新要求登陆。设为 True 时,使用默认的缓存路径 「wxpy.pkl」。
bot = Bot(cache_path=True)
获取语句
从金山词霸每日一句接口获取语录,用 requests 请求 api 地址,返回英文美句和中文翻译。
def get_msg():
url = 'http://open.iciba.com/dsapi/' # 金山词霸每日一句 api 链接
html = requests.get(url)
content = html.json()['content'] # 获取每日一句英文语句
note = html.json()['note'] # 获取每日一句英文的翻译语句
return content, note
发送语句
接下来把上面获取的语句发送给心动的人,输入你心动的人自己的微信昵称,注意:这里不是你对 TA 的备注,也不是 TA 的微信号,而是 TA 自己设置的微信昵称。我这里是发送给自己的小号「机器人」。自己定义的内容可以改成你觉得合适的语句。我们需要每日发送一次,用定时器设置时间为一天的秒数:86400 秒。
def send_msg():
try:
msgs = get_msg()
content = msgs[0]
note = msgs[1]
my_friend = bot.friends().search(
u'机器人')[0] # 此处是对方自己的昵称,不是微信号,也不是你的备注。
my_friend.send(content) # 发送英文语句
my_friend.send(note) # 发送英文翻译
my_friend.send(u'来自 brucepk 的问候') # 自定义语句,根据自己情况更改
t = Timer(10, send_msg) # Timer(定时器)是 Thread 的派生类,用于在指定时间后调用一个方法。
t.start()
except BaseException:
my_friend = bot.friends().search(u'brucepk')[
0] # 发送不成功,则发送消息给自己,提醒消息发送失败
my_friend.send(u'消息发送失败')
捕捉异常,如果发送失败的话,则发送消息给自己,提醒消息发送失败。
执行函数
最后运行主函数,即可大功告成。
if __name__ == '__main__':
send_msg()
运行结果
这样的话,岂不是一直都需要程序时刻都在运行?可以放在服务器上,我上网查了下,某云服务器可以试用半年。好了,骚年,我只能帮你到这了,接下来,看你自己的行动了。希望单身的你尽快追到心动的 TA。
公众号后台回复「脱单」获取源码。
此文章对你有点帮忙的话希望大家能多给点支持,该关注关注,该点赞点赞,该转发转发,有什么问题欢迎在后台联系我,也可以在后台加入技术交流群,群里有大神,可以一起交流学习。
------------------- End -------------------
往期精彩文章推荐:
![640?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/c597930fddd1c86131e1edc5daa82ab0.png)
欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持
想加入Python学习群请在后台回复【入群】
万水千山总是情,点个【在看】行不行