用python实现微信定时发文

-如果你女朋友需要天天给她微信发“晚安”,你一般怎么做呢?

-每天用手机敲出来

-忘记了怎么办?

-设个闹钟

-哥不扶墙,就服你

作为程序员哥哥,你如果再怎么low,那就有点愧对你的身份了。一想,不就是一个定时任务吗?定时器就可以搞定。可,可....

作为热门的java好像没有处理个人微信的相关接口,有的都是针对公众号的,并且还要认证。

人生苦短,我用python。还好python有。

wxpy是专门用于python处理个人用户微信的相关模块,这个模块可以查看朋友、查看群组、发信息、公众号操作等等,功能非常强大。

安装,用python带的pip就可以了

下面是个从金山词霸的每日一句获取数据,然后发送给女朋友的程序。

#不要抄下源码就运行,你需要改动几个地方

from __future__ import unicode_literals
from threading import Timer
from wxpy import *
import requests
bot = None
def get_news1():
    #获取金山词霸每日一句,英文和翻译
    url = "http://open.iciba.com/dsapi/"
    r = requests.get(url)
    print(r.json())
    contents = r.json()['content']
    translation = r.json()['translation']
    return contents,translation
def login_wechat():
    
    global bot
    bot = Bot()
    # bot = Bot(console_qr=2,cache_path="botoo.pkl")#Linux专用,像素二维码

def send_news():
    if bot == None:
        login_wechat()
    try:
        my_friend = bot.friends().search(u'春蕾')[0]    #你朋友的微信名称,不是备注,也不是微信帐号。
        # my_friend = bot.groups().search(u'测试')[0]    #你群的微信名称,不是备注,也不是微信帐号。
        my_friend.send(get_news1()[0])
        my_friend.send(get_news1()[1][5:])
        t = Timer(86400, send_news) #每86400秒(1天),发送1次,不用linux的定时任务是因为每次登陆都需要扫描二维码登陆,很麻烦的一件事,就让他一直挂着吧
        t.start()
    except:
        print(u"今天消息发送失败了")
if __name__ == "__main__":
    send_news()
    print(get_news1()[0])
    print(get_news1()[1][5:])

-程序员有女朋友吗?

-没有啊

-啊?好吧,那这个程序就没用了

-谁说的,找基友不是也可以吗?

猜你喜欢

转载自blog.csdn.net/zfyj_2004/article/details/80496530