idea用token登陆github_用python和她一起唐诗宋词

e269cc93daa621628360dcffffe5a9b1.png
在一个夜黑风高的夜晚、在我拨了无数个无法接通后,我接到了一个未知男人的来电。他告诉我........... “别来骚扰我了,我教你还不行么” 在不求人这条路上我走了好久,痛定思痛后、让我终于明白了一个道理:女友才是真谛~

微信登录

安装微信机器人模块 pip install -U wxpy 导入模块

from wxpy import * 初始化机器人,扫码登陆 bot = Bot()

通过微信网页版登录、初始化登陆时需要扫码

请求诗词API接口

Token 用于鉴别和区分每个用户,获取后 永久有效

获取 Token 的地址为,GET 方法

https://v2.jinrishici.com/token

返回值 { "status": "success", "data": "RgU1rBKtLym/MhhYIXs42WNoqLyZeXY3EkAcDNrcfKkzj8ILIsAP1Hx0NGhdOO1I" }

携带Token请求,在header中指定X-User-Token

请求地址 https://v2.jinrishici.com/sentence

通过urllib3构造请求头

http = urllib3.PoolManager()
result = http.request('GET','https://v2.jinrishici.com/sentence', 
                      headers={'X-User-Token': RgU1rBKtLym/MhhYIXs42WNoqLyZeXY3EkAcDNrcfKkzj8ILIsAP1Hx0NGhdOO1'})

计划任务

python时间调度框架APScheduler,APScheduler 四个组件分别为:触发器(trigger),作业存储(job store),执行器(executor),调度器(scheduler)。 其中触发器(trigger)规则有三种 - date #基础规则只会执行一次 - cron #计划任务、指定时间循环执行 - interval #间隔任务、指定时间段循环执行
scheduler = BlockingScheduler()
scheduler.add_job(job, 'cron', day_of_week='1-5', hour=8, minute=20)  
# job为具体的执行函数,后面为时间定义:每天最好的时间给最好的她送去最好的诗词....
scheduler.start()

全部代码

from wxpy import *
import urllib3
import json

from apscheduler.schedulers.blocking import BlockingScheduler


'''
初始化登录状态,搜索的好友名称为自己通讯录中的备注名
返回结果为list
'''
bot = Bot()
kele = bot.friends().search('可乐')[0]
sched = BlockingScheduler()


def send_message():
    '''
    通过API获取json格式诗词、并解析出对应的 标题、作者、内容
    title:  诗词名
    author: 作者
    origin: 内容
    '''
    http = urllib3.PoolManager()
    result = http.request('GET','https://v2.jinrishici.com/sentence', headers={'X-User-Token': '*******'})
    s = json.loads(result.data)
    title = s['data']['origin']['title']
    author = s['data']['origin']['dynasty'] + '--' + s['data']['origin']['author']
    origin = json.loads(result.data)['data']['origin']['content']
    message = "{}n{}n{}n".format(title,author,origin)
    kele.send(message)   #发送消息


def cron(event):
    '''
    周一至周五早上8:20执行任务
    '''
    sched = BlockingScheduler()
    sched.add_job(event, 'cron',  day_of_week='1-5', hour=8, minute=20)
    sched.start()

if __name__ == "__main__":
    cron(send_message)

参考

APScheduler 今日诗词 wxpy:用Python玩微信 GitHub

e10e32925824e67beab1f06db7848924.png
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值