程序员有女朋友?new 一个就行。
Python 只要内存够,想 new 多少个对象都不是问题。
由于行业环境的原因,程序员单身的确实多,这也是程序员的世纪难题。
今天,不是给大家发对象,只教大家方法。今天教大家怎么用 Python 给心动的人每天定时发早安或者晚安。
前提条件是,你得有一个心动对象。哇,我连心动对象都没有怎么办?骚年,那你还不赶紧行动,去寻找你的心动的 TA。
好了,直接进入今天的主题。
找对象环境
语言:Python3编辑工具:Pycharm
导包
wxpy:操作微信的库,机器人陪你唠嗑那篇文章也用到过。
requests:用来请求目标网站。
Timer:定时器,是 Thread 的派生类,用于在指定时间后调用一个方法。
from wxpy import *import requestsfrom 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。
全部0条评论
快来发表一下你的评论吧 !