当前位置: 首页 > 编程日记 > 正文

50行Python代码,获取公众号全部文章

640?wx_fmt=jpeg

作者 | 胖虎

转载自Python3X(ID: python3xxx )


爬取公众号的方式常见的有两种:

  • 通过搜狗搜索去获取,缺点是只能获取最新的十条推送文章。

  • 通过微信公众号的素材管理,获取公众号文章。缺点是需要申请自己的公众号。


640?wx_fmt=png


今天介绍一种通过抓包PC端微信的方式去获取公众号文章的方法。相比其他的方法非常方便。


640?wx_fmt=jpeg


640?wx_fmt=png


如上图,通过抓包工具获取微信的网络信息请求,我们发现每次下拉刷新文章的时候都会请求 mp.weixin.qq.com/mp/xxx (公众号不让添加主页链接,xxx表示profile_ext) 这个接口。


经过多次测试分析,用到了以下几个参数

  • __biz : 用户和公众号之间的唯一id,

  • uin :用户的私密id

  • key :请求的秘钥,一段时候只会就会失效。

  • offset :偏移量

  • count :每次请求的条数


数据如下:


部分代码如下:



最后打印的list就是公众号的文章信息详情。包括标题(titile)、摘要(digest)、文章地址(content_url)、阅读原文地址(source_url)、封面图(cover)、作者(author)等等...


输出结果如下:



获取数据之后,可以保存到数据库中,也可以将文章保存在PDF中。


1、保存在Mongo中



结果如下:


640?wx_fmt=png


2、导入到PDF文件中


Python3中常用的操作PDF的库有python-pdf和pdfkit。我用了pdfkit这个模块导出pdf文件。

pdfkit是工具包Wkhtmltopdf的封装类,因此需要安装Wkhtmltopdf才能使用。

可以访问 https://wkhtmltopdf.org/downloads.html 下载和操作系统匹配的工具包。


640?wx_fmt=png


实现代码也比较简单,只需要传入导入文件的url即可。


安装pdfkit库:




运行之后成功导出pdf文件:


640?wx_fmt=png


完整代码



(*本文为 AI科技大本营转载文章,转载请联系原作者


精彩推荐


640?wx_fmt=png

推荐阅读

  • 阿里达摩院刷新纪录,开放域问答成绩比肩人类水平,超微软、Facebook

  • 200行代码实现一个滑动验证码

  • 收藏!本、硕、博、程序员必备神器

  • 三十四载Windows崛起之路: 苹果、可视做过微软“铺路石”

  • 苹果首席设计师离职,或因库克对设计没兴趣?

  • 孩子学编程,更要学算法编程!否则你的机械键盘传给谁?

  • 物联网终端五年后将超 270 亿!破竹之势下程序员如修炼内功?

  • 视频 |「以太坊开发训练营」如何带你安全、高效跑通以太坊开发全流程! 收藏!

  • 百度自动驾驶新突破:获首批T4牌照,升级Apollo 5.0,将进行复杂城市场景路测


640?wx_fmt=png你点的每个“在看”,我都认真当成了喜欢

相关文章:

解决Windows7下vs2008 Active control test container 不能运行的问题

按照:http://blog.csdn.net/fengbingchun/archive/2011/05/05/6398356.aspx 在windows7系统中,vs2008环境下用MFC ActiveX Control生成的控件不能正常编译,但是在xp系统中却能正常编译,解决方法: 1、在windows7中编译…

入门必备 | 一文读懂神经架构搜索

作者 | Md Ashiqur Rahman编译 | 刘静转载自图灵TOPIA(ID: turingtopia)近期谷歌大脑团队发布了一项新研究:只靠神经网络架构搜索出的网络,不训练,不调参,就能直接执行任务。这样的网络叫做WANN&#xff0c…

脚本化 tmux — LinuxTOY

脚本化 tmux — LinuxTOY脚本化 tmux2012-07-02 Toy Posted in TipsRSS昨天我在家试了下脚本化 tmux,其表现相当令人满意,只需稍加定制便可满足各种实际需要。这或许可以成为抛弃 GNU screen,改用 tmux 的又一个理由。该脚本先判断一个名为 c…

OpenCV像素点处理

转自:http://blog.csdn.net/hxgqh/archive/2011/02/23/6202001.aspx 获得像素点的值便可以更加灵活的进行图像处理,在OpenCV里可以通过cvGet2D()和cvSet2D()两个函数加上一个CvScalar结构体做到。OpenCV中,CvScalar结构为:typedef…

亲 , Zookeeper了解一下 : 概述

2019独角兽企业重金招聘Python工程师标准>>> 在学习的过程中,我们总需要一个来自灵魂的拷问: 为什么? 为什么会产生Zookeeper 这个问题有深度,那要从五百万年说起,在遥远的塞伯坦星球..... 扯远了... 在遥远在单机单服务的时代 , 想要扩展服务 , 只能增加硬件配置 …

wordpress jquery加载如何实现?

2019独角兽企业重金招聘Python工程师标准>>> 为什么写这篇文章? 因为之前在wordpress里面用jquery的时候没注意,这次因为要优化网站把没用的插件删了,结果发现有的jquery功能失效了,调试了许久才发现可能是jQuery没有定…

百度与华为重磅合作!李彦宏:技术是百度的信仰

导语:这是百度第三年举办AI开发者大会。一生二,二生三,三生万物。AI虽然不能产生万物,但是正在“唤醒万物”。 作者 | 阿司匹林 出品 | AI科技大本营(ID:rgznai100) 在今天上午举行的的百度AI开发者大…

已知空间一点到另外两点直线的距离

转自:http://www.cnblogs.com/clarkustb/archive/2008/11/04/1326500.html 已知空间一点到另外两点直线的距离设空间中的三点为M1,M2,M3,分别用矢量a,b表示方向向量M1M2和M1M3,则: 1. M3到M1,M2连线的距离为|axb|/|a|,这里|.|表示向量的…

vue---进行post和get请求

参考文档&#xff1a; https://www.jb51.net/article/125717.htm 使用axios <script src"https://unpkg.com/axios/dist/axios.min.js"></script> 基本使用方法&#xff1a; get请求&#xff1a; // Make a request for a user with a given ID axios.ge…

CxImage图像处理类库

转自&#xff1a;http://blog.csdn.net/byxdaz/archive/2009/04/10/4061324.aspx CxImage是一个可以用于MFC 的C图像处理类库类&#xff0c;它可以打开&#xff0c;保存&#xff0c;显示&#xff0c;转换各种常见格式的图像文件&#xff0c;比如BMP, JPEG, GIF, PNG, TIFF, MNG…

设计模式学习2 工厂模式

工厂模式其实就是简单模式的升级版本&#xff0c; 简单模式将界面与业务逻辑区分开&#xff0c;但是如果不停的增加计算器的运算方式&#xff0c;简单模式中的工厂Factory 中判断的业务逻辑会变非常复杂&#xff0c;这不符合封装的原则。 所以在此之上将Factory抽象了出来&…

输入字符串,包含数字,大小写字母,编程输出出现做多的数字的和

题目描述&#xff1a; 输入字符串&#xff0c;包含数字&#xff0c;大小写字母&#xff0c;编程输出出现做多的数字的和。 思路&#xff1a; 1.创建输入对象2.输入字符串3.利用正则将字母分离出&#xff0c;剩余的每一个字符串即为待统计的每一个数字&#xff0c;存入字符串数组…

优化思路千万种,基于下界函数的最优化效率如何?

作者丨stephenDC来源 | 大数据与人工智能&#xff08;ID:ai-big-data&#xff09;导读&#xff1a;生活中我们处处面临最优化的问题&#xff0c;比如&#xff0c;怎么样一个月减掉的体重最高&#xff1f;怎么样学习效率最高&#xff1f;怎么样可以最大化实现个人价值&#xff1…

Quintum 语音网关设置方法

Quintum 网关基本配置 Quintum 网关基本配置 登陆方式&#xff1a;方法一&#xff1a;串口登陆&#xff08;1&#xff09;&#xff0e;用配套的串口线连接网关的CONSOLE口和电脑的串口。 &#xff08;2&#xff09;&#xff0e;开启电脑的的超级终端&#xff0c;路径如下&#…

Activex test contact failed to create control 未指定的错误 控件无法加载的原因

转自&#xff1a;http://blog.csdn.net/phker/archive/2009/12/25/5073402.aspx 本文指的是vc项目的activex 出现这个问题, 我总结了总共有以下几点,可能还有其他原因: 1.中文问题:如果你的项目类型是多字节的,而不是unicode编码的,你可能要注意这个问题了,我就发生了这个问题…

人工智能技术在内容行业的应用:AI对中长尾内容平台还是奢侈品

整理 | 夕颜出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;导读&#xff1a;随着人工智能技术的发展&#xff0c;媒体行业本身在不断地发生变化&#xff0c;从传统媒体到新媒体&#xff0c;改变的不仅是信息载体&#xff0c;更是一种新的逻辑&#xff0c;无论是内容…

QQ爬虫-爬取QQ空间

背景&#xff1a;在一篇个人博客看到了相关的爬虫的知识&#xff0c;个人比较有兴趣&#xff0c;就花了点时间研究了一下&#xff0c;主要通过好友空间的互动(相互访问量&#xff0c;点赞&#xff0c;评论&#xff0c;以及其他互动)&#xff0c;以及好友之间聊天的活跃度&#…

perl编程手册

2019独角兽企业重金招聘Python工程师标准>>> perl编程手册: -------------------------------手册-------------------------------- perl手册.chm http://vdisk.weibo.com/s/moN-p -------------------------------视频-------------------------------- 俺的…

VC使用ActiveX控件常见问题

转自&#xff1a;http://lingchuangsong.blog.163.com/blog/static/126932322008631104133309/ 一方面&#xff0c;它表示将你联系到Microsoft、Internet和业界的新技术的小型快速的可重用组件。它与开发语言无关&#xff0c;任何支持 ActiveX控件的软件开发平台&#xff08;如…

你绝没用过的一款高级空间可视化工具

作者 | Shan He转载自高级农民工&#xff08;ID: Mocun6&#xff09;说起 Python 中的可视化&#xff0c;我们一般用的最多的是 Matplotlib&#xff0c;绘制一般的图效果都很好。有时候也会用风格比较好看的 Pyecharts 库&#xff0c;尤其是在展示空间地图上的数据时。不过它的…

揭秘vue——vue-cli3全面配置

★ vue-cli3 全面配置 ★ Nuxt.js 全面配置 创建项目 配置环境变量 通过在package.json里的scripts配置项中添加--mode xxx来选择不同环境 在项目根目录中新建.env, .env.production, .env.analyz等文件 只有以 VUE_APP_ 开头的变量会被 webpack.DefinePlugin 静态嵌入到客户端…

周礼栋:现在是计算机系统和网络研究“最好的时代”

编者按&#xff1a;随时随地使用各种系统和工具&#xff0c;对现代人来说早已是司空见惯的事&#xff0c;但这一切完美工作的技术和服务并不是凭空出现的。正是因为微软亚洲研究院副院长周礼栋博士和他带领的团队这样从事系统和网络研究工作的研发人员在幕后不断的努力和创新&a…

ChaLearn Gesture Challenge_2:examples体验

前言&#xff1a; 在上一篇博文ChaLearn Gesture Challenge_1&#xff1a;CGD数据库简单介绍中已经简单介绍过CGD2011数据库&#xff0c;了解到该数据库可以作为公开的数据库来测试在深度信息和RGB信息上的手势识别。当然了&#xff0c;也可以通过参加这个挑战赛来对比自己的手…

vs2008 外部调用ActiveX控件接口方法

转自&#xff1a;http://topic.csdn.net/u/20090605/16/018e26e9-06e2-4e0d-8099-bc8eb326afde.html sndaxdrs: 初学activeX &#xff0c;我写的一个 activeX控件测试程序。 分别调用两个 自定义方法&#xff0c; 分别出现 “找不到成员”&#xff0c;和“非选择性的参数”的提…

设计模式之禅笔记

2019独角兽企业重金招聘Python工程师标准>>> 1.设计原则 1)单一职责原则 There should never be more than one reason for a class to change &#xff08;就一个类而言&#xff0c;应该只有一个引起它变化的原因&#xff09; 用于控制类的粒度大小,防止类过于复杂…

vs2008部署问题

转自&#xff1a;http://tangxingqt.blog.163.com/blog/static/2771087220098214755269/ 参考资料 1、VS2005解决"应用程序配置不正确&#xff0c;程序无法启动"问题 2、VS2005安装文件 "由于应用程序配置不正确&#xff0c;应用程序未能启动" 3、Micro…

expdp数据泵导出操作

数据泵需要在本地执行&#xff0c;不可以远程登录操作。 数据泵需要建立目录directory --sys下 create directory su as d:\xs 目录的数据字典是dba_directories SYSncbeta>select owner,directory_name,directory_path from dba_directories; 要求导出scott用户下的emp表…

slf4j 日志监控

问题描述 监控系统 新系统起步&#xff0c;旨在监控原有系统的各种问题。主要的一部分&#xff0c;就是监视原有系统的日志。 日志&#xff0c;是Java企业级应用开发必不可少的一部分&#xff0c;市场上有诸多日志框架。我们选用slf4j。 日志有以下级别&#xff1a; TRACE, DEB…

阿里90后科学家研发,达摩院开源新一代AI算法模型

整理 | 一一出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;AI科技大本营7月5日消息&#xff0c;阿里达摩院宣布开源新一代人机对话模型ESIM。该算法模型提出两年多&#xff0c;已被200多篇论文引用&#xff0c;更曾在国际顶级对话系统评测大赛&#xff08;DSTC7&…

在vs2008中配置OpenCV2.2

1、下载OpenCV2.2&#xff1a;http://www.opencv.org.cn/index.php/Download 2、下载后解压缩OpenCV-2.2.0-win.zip&#xff1b; 3、下载CMake&#xff1a;http://www.cmake.org/cmake/resources/software.html 4、安装CMake&#xff1b; 5、运行cmake-gui&#xff0c;在wh…