querylist采集微信公众号文章(一个获取微信公众号文章的方法,你知道吗?)
优采云 发布时间: 2022-03-11 16:27querylist采集微信公众号文章(一个获取微信公众号文章的方法,你知道吗?)
之前自己维护了一个公众号,但是因为个人关系,很久没有更新了。今天来缅怀一下,偶然发现了一个获取微信公众号文章的方法。
之前的获取方式有很多。可以通过搜狗、青博、网页、客户端等方式使用,这个可能不如其他的好,但是操作简单易懂。
所以,首先你需要有一个微信公众平台的账号
微信公众平台:
登录后进入首页,点击新建群发。
选择自创图形:
好像是公众号运营教学
进入编辑页面后,单击超链接
弹出选择框,我们在框中输入对应的公众号名称,就会出现对应的文章列表。
可以打开控制台查看请求的界面,这不奇怪吗
打开响应,也就是我们需要的 文章 链接
确定数据后,我们需要对接口进行分析。
感觉很简单,一个GET请求,携带一些参数。
fakeid 是公众号的唯一 ID,所以如果要直接通过名称获取 文章 的列表,则需要先获取 fakeid。
当我们输入公众号名称时,点击搜索。可以看到触发了搜索界面,返回了fakeid。
这个接口不需要很多参数。
接下来,我们可以使用代码来模拟上述操作。
但是,也有必要使用现有的 cookie 来避免登录。
当前的cookie过期日期,我没有测试过。可能需要不时更新 cookie。
测试代码:
import requests
import json
Cookie = "请换上自己的Cookie,获取方法:直接复制下来"
url = "https://mp.weixin.qq.com/cgi-bin/appmsg"
headers = {
"Cookie": Cookie,
"User-Agent": "Mozilla/5.0 (Linux; Android 10; YAL-AL00 Build/HUAWEIYAL-AL00) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/70.0.3538.64 HuaweiBrowser/10.0.1.335 Mobile Safari/537.36"
}
keyword = "pythonlx" # 公众号名字:可自定义
token = "你的token" # 获取方法:如上述 直接复制下来
search_url = "https://mp.weixin.qq.com/cgi-bin/searchbiz?action=search_biz&begin=0&count=5&query={}&token={}&lang=zh_CN&f=json&ajax=1".format(keyword,token)
doc = requests.get(search_url,headers=headers).text
jstext = json.loads(doc)
fakeid = jstext["list"][0]["fakeid"]
data = {
"token": token,
"lang": "zh_CN",
"f": "json",
"ajax": "1",
"action": "list_ex",
"begin": 0,
"count": "5",
"query": "",
"fakeid": fakeid,
"type": "9",
}
json_test = requests.get(url, headers=headers, params=data).text
json_test = json.loads(json_test)
print(json_test)
这样就可以获得最新的10篇文章文章。如果想获取更多历史文章,可以修改数据中的“begin”参数,0为第一页,5为第二页,10为第三页(以此类推)
但如果你想*敏*感*词*刮:
请为自己安排一个稳定的代理,降低爬虫速度,并准备好多个账号,以减少被封号的可能性。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持云海天教程。