最近自己在学python。这篇文章受启发于此篇博文,以及知乎上的这篇文章。首先要感谢他们的先驱工作。但是我在试用的时候遇上了点问题。我稍加利用,改了一些bug。亲测能用。觉得比较神奇,好东西就应该拿出来分享一下。
提前说明,先提前安装好itchat模块。在命令提示符窗口写入:pip install itchat 回车就行了。其次就是我用的是python3,我不确定python2能不能正常运行不报错。
这个程序会把金山词霸上的每日一句自动发送给指定的微信好友。
效果图,你们就参考我引用的第一篇博文吧。我就不再献丑了。
# -*- coding: utf-8 -*-
"""
Created on Thu May 17 19:08:26 2018
Auto send message to one of your friend of Wechat everyday.
@author: XiuCai
"""
from __future__ import unicode_literals
import requests
import itchat
from threading import Timer
def get_news():
url = "http://open.iciba.com/dsapi"
r = requests.get(url)
contents = r.json()['content']
translation = r.json()['translation']
return contents, translation
def send_news():
'''主要功能就在这里'''
try:#登陆你的微信账号,会弹出网页二维码,扫描即可
itchat.auto_login(hotReload=True)
# 获取你对应的好友备注,这里的XXX我只是举个例子
my_friend = itchat.search_friends(name=u'XXX')
# 获取对应名称的一串数字
The_One = my_friend[0]["UserName"]
# 获取金山字典的内容
message1 = str(get_news()[0])
content = str(get_news()[1][17:])
message2 = str(content)
message3 = "Love you foever"#也可以写一些酸掉牙的话,煽情的话,告白的话
# 发送消息
itchat.send(message1, toUserName=The_One)
itchat.send(message2, toUserName=The_One)
itchat.send(message3, toUserName=The_One)
# 每86400秒(1天),发送1次,
# 不用linux的定时任务是因为每次登陆都需要扫描二维码登陆,
# 很麻烦的一件事,就让他一直挂着吧
t = Timer(86400, send_news)
t.start()
except:#异常时的处理
message4 = u"今天出现了bug /(ㄒoㄒ)/~~"
itchat.send(message4, toUserName=The_One)
if __name__ == '__main__':
send_news()