querylist采集微信公众号文章(一个获取微信公众号文章的方法,你知道吗?)

优采云 发布时间: 2021-12-18 01:17

  querylist采集微信公众号文章(一个获取微信公众号文章的方法,你知道吗?)

  之前是自己维护一个公众号,但是因为个人关系好久没有更新,今天上来想起来,却偶然发现了微信公众号文章的获取方式。

  之前的获取方式有很多,通过搜狗、清博、web、客户端等都可以,这个可能不太好,但是操作简单易懂。

  所以。首先,您需要在微信公众平台上有一个账号

  微信公众平台:

  

  登录后,进入首页,点击新建群发。

  

  选择自创图形:

  

  好像是公众号操作教学

  进入编辑页面后,点击超链接

  

  弹出一个选择框,我们在框中输入对应的公众号名称,就会出现对应的文章列表

  

  你惊喜吗?您可以打开控制台并检查请求的界面

  

  打开回复,里面有我们需要的文章链接

  

  确认数据后,我们需要对这个界面进行分析。

  感觉非常简单。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为第三页(以此类推)

  但是如果你想*敏*感*词*爬行:

  请自己安排一个稳定的代理,降低爬虫速度,准备多个账号,减少被屏蔽的可能性。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线