通过微信公众平台获取公众号文章的方法示例


Posted in Javascript onDecember 25, 2019

我之前自己维护了一个公众号,但因为个人关系很久没有更新了,今天上来缅怀一下,却偶然发现了一个获取微信公众号文章的方法。

之前获取方法有很多,通过搜狗、清博、网页端、客户端等等都还可以,这个可能并没有其他的优秀,但是操作简单,很容易理解。

so、 首先需要有一个微信公众平台的账号

微信公众平台:https://mp.weixin.qq.com/

通过微信公众平台获取公众号文章的方法示例

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

通过微信公众平台获取公众号文章的方法示例

选择自建图文:

通过微信公众平台获取公众号文章的方法示例

似乎像是公众号运营教学了

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

通过微信公众平台获取公众号文章的方法示例

弹出选择框,我们在框中输入对应的公众号名字,即可出现对应的文章列表

通过微信公众平台获取公众号文章的方法示例

是不是很惊奇,可以打开控制台,查看一下请求的接口

通过微信公众平台获取公众号文章的方法示例

打开response,里面就是我们需要的文章链接

通过微信公众平台获取公众号文章的方法示例

确定了数据以后,我们需要分析一下这个接口

感觉很简单,一个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篇文章了,如果想要获取更多的历史文章,可以修改data中的"begin"参数,0是第一页,5是第二页,10是第三页(以此类推)

但是如果想要大规模抓取的话:
请给自己安排一个稳定的代理,降低爬虫的速度,准备多个账号,来减少被封禁的可能性。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Jquery中val()表单取值赋值的实例代码
Aug 15 Javascript
使用javascript实现页面定时跳转总结篇
Sep 21 Javascript
JavaScript设计模式之外观模式实例
Oct 10 Javascript
详解Javascript 装载和执行
Nov 17 Javascript
JavaScript函数详解
Feb 27 Javascript
jQuery使用serialize()表单序列化时出现中文乱码问题的解决办法
Jul 27 Javascript
Vuejs第十二篇之动态组件全面解析
Sep 09 Javascript
javaScript中定义类或对象的五种方式总结
Dec 04 Javascript
JQuery validate 验证一个单独的表单元素实例
Feb 17 Javascript
vue项目中用cdn优化的方法
Jan 03 Javascript
jquery实现点击弹出对话框
Feb 08 jQuery
JS数组reduce()方法原理及使用技巧解析
Jul 14 Javascript
vue远程加载sfc组件思路详解
Dec 25 #Javascript
node实现mock-plugin中间件的方法
Dec 25 #Javascript
微信小程序停止其他视频播放当前视频的实例代码
Dec 25 #Javascript
vue分页插件的使用方法
Dec 25 #Javascript
继承行为在 ES5 与 ES6 中的区别详解
Dec 24 #Javascript
在JavaScript中实现链式调用的实现
Dec 24 #Javascript
vue实现分页加载效果
Dec 24 #Javascript
You might like
浅析php与数据库代码开发规范
2013/08/08 PHP
php实现的debug log日志操作类实例
2016/07/12 PHP
PHP实现的简单操作SQLite数据库类与用法示例
2017/06/19 PHP
PHP创建自己的Composer包方法
2018/04/09 PHP
php获取手机端的号码以及ip地址实例代码
2018/09/12 PHP
TP5框架实现一次选择多张图片并预览的方法示例
2020/04/04 PHP
javascript Base类 包含基本的方法
2009/07/22 Javascript
jquery使用append(content)方法注意事项分享
2014/01/06 Javascript
实例讲解JS中数组Array的操作方法
2014/05/09 Javascript
jQuery实现页面滚动时动态加载内容的方法
2015/03/20 Javascript
纯javascript代码实现计算器功能(三种方法)
2015/09/07 Javascript
JavaScript DOM 学习总结(五)
2015/11/24 Javascript
JavaScript每天必学之数组和对象部分
2016/09/17 Javascript
微信小程序实现图片轮播及文件上传
2017/04/07 Javascript
Bootstrap table使用方法记录
2017/08/23 Javascript
vue小白入门教程
2018/04/02 Javascript
vue-cli开发环境实现跨域请求的方法
2018/04/07 Javascript
Angular学习教程之RouterLink花式跳转
2018/05/03 Javascript
Koa代理Http请求的示例代码
2018/10/10 Javascript
JS实现灯泡开关特效
2020/03/30 Javascript
解决vue项目打包上服务器显示404错误,本地没出错的问题
2020/11/03 Javascript
[33:23]Secret vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python使用BeautifulSoup分页网页中超链接的方法
2015/04/04 Python
Python的Bottle框架中实现最基本的get和post的方法的教程
2015/04/30 Python
Python获取当前路径实现代码
2017/05/08 Python
python字符串分割及字符串的一些常规方法
2019/07/24 Python
django+tornado实现实时查看远程日志的方法
2019/08/12 Python
pygame实现俄罗斯方块游戏(AI篇1)
2019/10/29 Python
Pytorch实现的手写数字mnist识别功能完整示例
2019/12/13 Python
python实现ip地址的包含关系判断
2020/02/07 Python
在html页面中取得session中的值的方法
2020/08/11 HTML / CSS
2013年学期结束动员演讲稿
2014/01/07 职场文书
四年大学生活的自我评价范文
2014/02/07 职场文书
美食节策划方案
2014/05/26 职场文书
zabbix监控mysql的实例方法
2021/06/02 MySQL
MYSQL如何查看操作日志详解
2022/05/30 MySQL