利用腾讯云函数推送微博热搜
前天看了一个帖子,是利用腾讯云函数推送微博热搜的,心血来潮,然后也写了一个
我的思路的通过api获取热搜数据,再通过api推送到微信平台,要是从微博抓取就太麻烦了,又要准备cookies又得写老长的代码,还是api简单省事。
先做一些准备,申请一些api什么的,如果都ok了可以直接到下文看代码
首先是申请一个微博热搜的api,可以在这里申请 申请链接
注册账号后,在控制台验证邮箱
然后点击申请链接,申请接口,申请完成后,点击在线调试
然后保存好key值
接下来就是申请推送的api,微信关注公众号pushplus 推送加,关注后会发送一个token值,也记好,等一下要用到
然后就是注册一个腾讯云账号,然后前往腾讯云函数控制台 控制台链接
创建一个自定义的腾讯云函数,运行环境是python3.6
等部署完成后跳转,点击函数代码
把里面的代码替换成下面的
# -*- coding: utf8 -*- import json import requests def main_handler(event, context): url = "http://api.tianapi.com/txapi/weibohot/index?key=key值" raw = requests.get(url) data=json.loads(raw.text) newlist=data.get('newslist') push_url="http://www.pushplus.plus/send?token=token值&title=微博热搜&content=" dict_1={} if data['code']==140: return("error-140") for i in range(1,11): if i==11: exit() if len(str(newlist[i]['hottag']))==0: dict_1[i]=newlist[i]['hotword']+"--"+"热搜指数:"+newlist[i]['hotwordnum'] else: dict_1[i]=newlist[i]['hotword']+"--"+"热搜指数:"+newlist[i]['hotwordnum']+"--"+newlist[i]['hottag'] push_json=json.dumps(dict_1) push_url=push_url+push_json+"&template=json" return_data=requests.get(push_url) return_data=json.loads(return_data.text) success_msg=str(return_data['msg'])+str(return_data['data']) return(success_msg)
然后把代码里的key值和token值替换成上文申请到的热搜key值,和关注公众号得到的token值
点击部署,然后测试
最后,在云函数的触发管理,创建一个触发器,触发周期选择自定义,然后填写
0 0 */2 * * * *
大功告成,测试一下微信就能收到推送了,我这里是设置的两个小时推送一次
为了防止推送两次,这里需要在云函数的函数配置页面修改执行超时时间为6秒,重试次数修改为0
版权声明:
作者:幻浮辰
链接:https://www.fuchen33.com/2021/09/29/712.html
来源:幻浮辰博客
文章版权归作者所有,未经允许请勿转载。