- 请问一下文章推送到草稿箱没有报错,但是草稿箱中没有,是因为什么?
懂一些python但是懂得不多,一些方法是搜索的, 调用之后没报错,也请求成功了, 但是草稿箱中是不存在的 获取的media_id的函数如下, 参考的api:https://developers.weixin.qq.com/doc/offiaccount/Asset_Management/New_temporary_materials.html import requests from getToken import get_wxCode_token def upload_image_to_wechat(access_token, image_path): """ Uploads an image to WeChat's temporary material library. Parameters: access_token (str): The access token for WeChat API. image_path (str): The local file path to the image to be uploaded. Returns: dict: The JSON response from the WeChat API. """ url = f"https://api.weixin.qq.com/cgi-bin/media/upload?access_token={access_token}&type=image" files = {'media': open(image_path, 'rb')} try: response = requests.post(url, files=files) response.raise_for_status() # Raises an HTTPError if the HTTP request returned an unsuccessful status code return response.json() except requests.exceptions.HTTPError as errh: print(f"HTTP Error: {errh}") except requests.exceptions.ConnectionError as errc: print(f"Error Connecting: {errc}") except requests.exceptions.Timeout as errt: print(f"Timeout Error: {errt}") except requests.exceptions.RequestException as err: print(f"OOps: Something Else: {err}") finally: files['media'].close() # Example usage: # Replace 'YOUR_ACCESS_TOKEN' with your actual access token and 'path_to_image.jpg' with the path to your image file. # response = upload_image_to_wechat('YOUR_ACCESS_TOKEN', 'path_to_image.jpg') # print(response) token_and_time = get_wxCode_token() access_token = token_and_time[0] getTokenTime = token_and_time[1] print(upload_image_to_wechat( access_token, r"E:\图片\临时图片\4download.png")) 获取token的方法如下: def get_wxCode_token(): try: appid = "xxxxx" secret = "xxxx" textmod = {"grant_type": "client_credential", "appid": appid, "secret": secret } textmod = parse.urlencode(textmod) header_dict = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36'} url = 'https://api.weixin.qq.com/cgi-bin/token' req = request.Request(url='%s%s%s' % (url, '?', textmod), headers=header_dict) res = request.urlopen(req) res = res.read().decode(encoding='utf-8') res = json.loads(res) access_token = res["access_token"] print('access_token:',(access_token,time.time())) return (access_token,time.time()) except Exception as e: print(e) return False 推送到草稿箱的整体函数如下 import requests import datetime import time import json import chardet from getToken import get_wxCode_token # 此模块作用:将文本内容上传到公众号草稿箱,可参考https://developers.weixin.qq.com/doc/offiaccount/Draft_Box/Add_draft.html # 全流程: # 步骤:1.获取access_token # 2.从天行数据拉去想要的文本数据并解析整理 # 3.调用上传草稿的接口使用post方式上传文本数据 # 步骤: # 1.拿到token,用一个变量来记录获取token时的时间戳,每次执行时先检查时间达到2个小时的才去获取token token = '' getTokenTime = 0 class Caogao(object): def __init__(self,name,data,access_token,getTokenTime): self.name = name self.data = data self.access_token = access_token self.getTokenTime = getTokenTime # 先判断是否有token,如果没有,获取token,同时记录时间,获取后开始干活儿, # 如果有,判断是否失效,失效则重新获取, # 判断token是否过期 def which_token_abate(self): # 获取token时间戳 # global getTokenTime # 获取当前时间戳 nowtime_stamp = time.time() # 用当前时间戳减去getTokenTime,大于两个小时就判定失效 hour2 = 2 * 60 * 60 * 1000 if nowtime_stamp - self.getTokenTime > hour2: return True return False # 判断是否有token def have_token(self): if self.access_token != '': return True return False # 发送数据,data为要发的内容 def send_requests(self): # 2.导入requests包,发送post try: header_dict = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36', 'Content-Type': 'application/json; charset=utf-8' } response_psot = requests.post( url='https://api.weixin.qq.com/cgi-bin/draft/add?', params={ 'access_token': self.access_token}, headers=header_dict, data=bytes(json.dumps(self.data, ensure_ascii=False).encode('utf-8')) # data=self.data, ) print(response_psot, "成功") except Exception as e: print(e) def main(): # 2.推送到公众号 # 要传的草稿 data = { "articles": [ { "title": "青云RPA自动化", "author": "qingyun", "content": "dsafsfsffssfff", "thumb_media_id": "odDSy37Mb_kmr2ieDGwVv8TjfKNhZQqcZRzMYOWa1XdRQQSSMQfGQ2-sRvPMxILj" } ] } token_and_time = get_wxCode_token() access_token = token_and_time[0] getTokenTime = token_and_time[1] # 创建草稿实例 caogao = Caogao('caogao', data, access_token, getTokenTime) caogao.send_requests() if __name__ == '__main__': main()
10-09 - 关于公众号批量运营鉴定标准是什么?
因为我们是企业主体会有很多业务公众号,请问一下这个批量运营的数量标准是什么,如何避免 [图片]
10-05 - 公众号群发接口是不是非认证订阅号不能用?
https://developers.weixin.qq.com/doc/offiaccount/Message_Management/Batch_Sends_and_Originality_Checks.html#_2%E3%80%81%E4%B8%8A%E4%BC%A0%E5%9B%BE%E6%96%87%E6%B6%88%E6%81%AF%E7%B4%A0%E6%9D%90%E3%80%90%E8%AE%A2%E9%98%85%E5%8F%B7%E4%B8%8E%E6%9C%8D%E5%8A%A1%E5%8F%B7%E8%AE%A4%E8%AF%81%E5%90%8E%E5%9D%87%E5%8F%AF%E7%94%A8%E3%80%91 非认证的订阅号可以调群发接口发文章吗, 还是只能手动去操作, 我是需要发图文或者 图片/文字 [图片]
09-28 - 上传图文消息内的图片获取URL中的media如何填写?
https://developers.weixin.qq.com/doc/offiaccount/Asset_Management/Adding_Permanent_Assets.html [图片] 请问一下这个接口中的media如何填写
06-08 - 关于未订阅公众号调用PAI权限问题?
下面是权限说明文档,在权限说明里面并没有提到关于【草稿箱-新建草稿】和【发布能力-发布接口】这两项的权限,请问 未认证订阅号是否有权限 https://developers.weixin.qq.com/doc/offiaccount/Getting_Started/Explanation_of_interface_privileges.htmlhttps://developers.weixin.qq.com/doc/offiaccount/Publish/Publish.html
06-06 - 不用手机如何实现公众号登录?
请教一下有没有办法如何不用通过手机只使用电脑完成公众号的登录
04-04 - 公众号登录时候强制扫码如何关闭?
在安全中心无法关闭登录保护,每次都需要扫码,有没有办法跳过扫码 [图片]
01-24 - 小程序迁移在最后一步管理员确认迁移,如果不确认15天之后是不是会迁移失败?
小程序迁移在最后一步管理员确认迁移,如果不确认15天之后是不是会迁移失败? 因为业务原因不打算迁移了,现在这个状态不去确认是不是最终不会迁移 [图片]
2023-06-01 - 小程序改名之后用户端名称什么时间同步?
比如我当前小程序小程序名称是A,然后修改为名称B,之后用户端在微信界面下拉显示的小程序会自动变成B还是说需要等用户再次打开的时候才去更新名称
2023-05-21 - 小程序关联不同主体公众号不知道具体如何操作?
[图片] 想让小程序关联不同主体的公众号,但是接下来点了开放平台不知道如何操作
2023-05-02