半自动化实现公众号文章推送

admin 2024年4月1日10:55:07评论5 views字数 1735阅读5分47秒阅读模式

随着 crush_v3.0 版本发布,一直在思考通过何种方式,将漏洞更新信息推送给有需要,但是无法在本地进行项目搭建的人,于是有了这篇文章。

总体流程

之所以称之为半自动化推送,是因为能够通过脚本,利用 API 自动化完成文章内容编辑,新建草稿,封面配图等步骤,但是无法实现文章发表,只能进行文章发布(发布的文章只有自己能看到),因此,使用脚本将草稿写好后,需要手动到 app 或者网页端进行文章推送。 

1、利用 APPKEY 和 APPSECRET 获取 ACCESS TOKEN 

2、新增永久素材,用作封面配图 

3、新建草稿 

下面分别介绍每一步的实现方法。

实现方法

获取 access token

到设置与开发--基本配置处,获取 appid 和 appsecret:

半自动化实现公众号文章推送

到开发者文档,查看 api 调用方式。

半自动化实现公众号文章推送

根据接口调用说明,来获取 access_token:

半自动化实现公众号文章推送

import requestsimport jsonresponse = requests.get("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=xxx&secret=xxx")res = response.json()token = res.get("access_token")

可以利用上面的脚本来进行获取:

半自动化实现公众号文章推送

新增永久素材

这里上传一个永久素材,用作文章的封面。

半自动化实现公众号文章推送

这里利用 postman 实现。 url 为 https://api.weixin.qq.com/cgi-bin/material/add_material?access_token=xxxxxx&type=image ,添加图片,会返回一个 media_id。

半自动化实现公众号文章推送

新建草稿

同样根据官方文档,填写相应配置即可。

半自动化实现公众号文章推送

thumb_media_id 的值即为上一步获取到的内容。 最终效果如下,通过脚本即可实现草稿的编写,后续手动发表即可。

半自动化实现公众号文章推送

踩雷

1、access_token 有时限,因此每次推送需要获取新的 token 

2、在编写脚本时,发现 json 格式或者普通文本格式里的换行符等,到草稿中均无法被正确解析,需要利用 html 标签来实现换行(br) 

3、如果内容中含有中文字符,会默认进行 unicode 编码,需要在代码中进行处理

代码

import requestsimport jsonresponse = requests.get("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=xxx&secret=xxx")res = response.json()token = res.get("access_token")print(token)def create_draft(access_token, title, content, media_id):    url ='https://api.weixin.qq.com/cgi-bin/draft/add?access_token={}'.format(access_token)    data ={"articles":[{"title": title,"content": content,"thumb_media_id": media_id,"need_open_comment":0,"only_fans_can_comment":0}]}    headers ={'Content-Type':'application/json'}    response = requests.post(url, data=json.dumps(data, ensure_ascii=False).encode('utf-8'), headers=headers)    rt_data = response.json()print(rt_data)with open("wechat.log","r")as f:    content = f.read()    content = content.replace("n","<br>")    create_draft(token,"test title", content,"xxx")

原文始发于微信公众号(Crush Sec):半自动化实现公众号文章推送

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年4月1日10:55:07
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   半自动化实现公众号文章推送https://cn-sec.com/archives/2618643.html

发表评论

匿名网友 填写信息