python如何导出微信公众号文章方法详解


Posted in Python onAugust 31, 2020

python如何导出微信公众号文章方法详解

1.安装wkhtmltopdf

下载地址:https://wkhtmltopdf.org/downloads.html

我测试用的是windows的,下载安装后结果如下

python如何导出微信公众号文章方法详解

2 编写python 代码导出微信公众号文章

不能直接使用wkhtmltopdf 导出微信公众号文章,导出的文章会缺失图片,所以需要使用 wechatsogou 将微信公众号文章页面抓取,之后将html文本转化为pdf

pip install wechatsogou --upgrade

pip install pdfkit

踩坑!!!,看了很多人的代码,都是一个模板,大家都是抄来抄去,结果还是运行不了,可能是因为依赖包更新的原因,也可能是因为我本地没有配置wkhtmltopdf 的环境变量

import os
import pdfkit
import datetime
import wechatsogou
# 初始化API
ws_api = wechatsogou.WechatSogouAPI(captcha_break_time=3)
def url2pdf(url, title, targetPath):
 '''
 使用pdfkit生成pdf文件
 :param url: 文章url
 :param title: 文章标题
 :param targetPath: 存储pdf文件的路径
 '''
 try:
 content_info = ws_api.get_article_content(url)
 except:
 return False
 # 处理后的html
 html = f'''
{title}
 {content_info['content_html']}
 
 '''
 try:
 path_wk="E:/softwareAPP/wkhtmltopdf/bin/wkhtmltopdf.exe";
 config=pdfkit.configuration(wkhtmltopdf=path_wk)
 pdfkit.from_string(input=html, output_path=targetPath,configuration=config)
 except:
 # 部分文章标题含特殊字符,不能作为文件名
 filename = datetime.datetime.now().strftime('%Y%m%d%H%M%S') + '.pdf'
 pdfkit.from_string(html, targetPath + os.path.sep + filename)
 
if __name__ == '__main__':
 # 此处为要爬取公众号的名称
 url2pdf("https://mp.weixin.qq.com/s/wwT5n2JwEEAkrrmOhedziw", "HBase的系统架构全视角解读","G:/test/hbase文档.pdf" )
 # gzh_name = ''
 # # 如果不存在目标文件夹就进行创建
 # if not os.path.exists(targetPath):
 # os.makedirs(targetPath)
 # # 将该公众号最近10篇文章信息以字典形式返回
 # data = ws_api.get_gzh_article_by_history(gzh_name)
 # article_list = data['article']
 # for article in article_list:
 # url = article['content_url']
 # title = article['title']
 # url2pdf(url, title, targetPath)

到此这篇关于python如何导出微信公众号文章方法详解的文章就介绍到这了,更多相关python导出微信公众号文章内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python批量生成本地ip地址的方法
Mar 23 Python
详解Python中的array数组模块相关使用
Jul 05 Python
Python中模块与包有相同名字的处理方法
May 05 Python
Python实现计算两个时间之间相差天数的方法
May 10 Python
Windows上使用Python增加或删除权限的方法
Apr 24 Python
[机器视觉]使用python自动识别验证码详解
May 16 Python
pyinstaller参数介绍以及总结详解
Jul 12 Python
Python Web程序搭建简单的Web服务器
Jul 31 Python
Python进度条的制作代码实例
Aug 31 Python
python代码xml转txt实例
Mar 10 Python
用ldap作为django后端用户登录验证的实现
Dec 07 Python
Python实现GIF动图以及视频卡通化详解
Dec 06 Python
Python生成并下载文件后端代码实例
Aug 31 #Python
python exit出错原因整理
Aug 31 #Python
Python如何将模块打包并发布
Aug 30 #Python
如何以Winsows Service方式运行JupyterLab
Aug 30 #Python
selenium切换标签页解决get超时问题的完整代码
Aug 30 #Python
五分钟带你搞懂python 迭代器与生成器
Aug 30 #Python
python开根号实例讲解
Aug 30 #Python
You might like
php实现的MySQL通用查询程序
2007/03/11 PHP
解决文件名解压后乱码的问题 将文件名进行转码的代码
2012/01/10 PHP
phpstrom使用xdebug配置方法
2013/12/17 PHP
PHP封装的分页类与简单用法示例
2019/02/25 PHP
解决php用mysql方式连接数据库出现Deprecated报错问题
2019/12/25 PHP
JavaScript中setAttribute用法介绍
2013/07/20 Javascript
JavaScript中获取Radio被选中的值
2015/11/11 Javascript
jQuery树形控件zTree使用小结
2016/08/02 Javascript
Vue开发过程中遇到的疑惑知识点总结
2017/01/20 Javascript
JS实现留言板功能
2017/06/17 Javascript
ECMAscript 变量作用域总结概括
2017/08/18 Javascript
关于预加载InstantClick的问题解决方法
2017/09/12 Javascript
详解react、redux、react-redux之间的关系
2018/04/11 Javascript
详解使用Next.js构建服务端渲染应用
2018/07/10 Javascript
微信小程序中使用ECharts 异步加载数据实现图表功能
2018/07/13 Javascript
Vue组件通信的几种实现方法
2019/04/25 Javascript
JS异步宏队列与微队列原理区别详解
2020/07/02 Javascript
python正则表达式修复网站文章字体不统一的解决方法
2013/02/21 Python
Pyinstaller打包.py生成.exe的方法和报错总结
2019/04/02 Python
浅析Python3中的对象垃圾收集机制
2019/06/06 Python
django框架基于模板 生成 excel(xls) 文件操作示例
2019/06/19 Python
快速了解Python开发环境Spyder
2020/06/29 Python
canvas拼图功能实现代码示例
2018/11/21 HTML / CSS
罗兰·穆雷官网:Roland Mouret
2018/09/28 全球购物
XD健身器材:Kevlar球、Crossfit健身球
2019/03/26 全球购物
哈曼俄罗斯官方网上商店:Harman.club
2020/07/24 全球购物
说出一些常用的类,包,接口
2014/09/22 面试题
天游软件面试
2013/11/23 面试题
心得体会开头
2014/01/01 职场文书
2014预备党员党课学习心得范文
2014/07/08 职场文书
亲子阅读的活动方案
2014/08/15 职场文书
2014年保洁工作总结
2014/11/24 职场文书
2014年帮扶工作总结
2014/11/26 职场文书
html2 canvas svg不能识别的解决方案
2021/06/03 HTML / CSS
SpringBoot中获取profile的方法详解
2022/04/08 Java/Android
Nginx如何获取自定义请求header头和URL参数详解
2022/07/23 Servers