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小程序
Aug 15 Python
Python中比较特别的除法运算和幂运算介绍
Apr 05 Python
Python使用xlrd模块操作Excel数据导入的方法
May 26 Python
spyder常用快捷键(分享)
Jul 19 Python
python使用Matplotlib绘制分段函数
Sep 25 Python
python实现五子棋小游戏
Mar 25 Python
在Python中调用Ping命令,批量IP的方法
Jan 26 Python
python爬虫-模拟微博登录功能
Sep 12 Python
Python 使用type来定义类的实现
Nov 19 Python
Python读入mnist二进制图像文件并显示实例
Apr 24 Python
Python如何进行时间处理
Aug 06 Python
Django框架中模型的用法
Jun 10 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中强制下载文件的代码(解决了IE下中文文件名乱码问题)
2011/05/09 PHP
php中用foreach来操作数组的代码
2011/07/17 PHP
[原创]smarty简单模板变量输出方法
2016/07/09 PHP
yii2简单使用less代替css示例
2017/03/10 PHP
Javascript中的window.event.keyCode使用介绍
2011/04/26 Javascript
合并table相同单元格的jquery插件分享(很精简)
2011/06/20 Javascript
javascript倒计时功能实现代码
2012/06/07 Javascript
jQuery+PHP打造滑动开关效果
2014/12/16 Javascript
jQuery实现视频作为全屏幕背景
2014/12/18 Javascript
JavaScript实现动态添加,删除行的方法实例详解
2015/07/02 Javascript
使用CDN和AJAX加速WordPress中jQuery的加载
2015/12/05 Javascript
jQuery 中的 DOM 操作
2016/04/26 Javascript
深入理解JS中的substr和substring
2016/04/26 Javascript
jquery.form.js框架实现文件上传功能案例解析(springmvc)
2016/05/26 Javascript
jquery 无限极下拉菜单的简单实例(精简浓缩版)
2016/05/31 Javascript
jQuery实现拖拽页面元素并将其保存到cookie的方法
2016/06/12 Javascript
Angularjs中ng-repeat-start与ng-repeat-end的用法实例介绍
2016/12/31 Javascript
Javascript操作dom对象之select全面解析
2017/04/24 Javascript
了解JavaScript中let语句
2019/05/30 Javascript
vue实现文件上传读取及下载功能
2020/11/17 Javascript
Python批量查询域名是否被注册过
2017/06/21 Python
python获取磁盘号下盘符步骤详解
2019/06/19 Python
Apache部署Django项目图文详解
2019/07/30 Python
如何在python中实现随机选择
2019/11/02 Python
python之MSE、MAE、RMSE的使用
2020/02/24 Python
django表单中的按钮获取数据的实例分析
2020/07/31 Python
CSS3教程(7):CSS3嵌入字体
2009/04/02 HTML / CSS
关于canvas.toDataURL 在iOS运行失败的问题解决
2020/09/16 HTML / CSS
味多美官网:蛋糕订购,100%使用天然奶油
2017/11/10 全球购物
如何进行有效的自我评价
2013/09/27 职场文书
硕士研究生自我鉴定范文
2013/12/27 职场文书
学校门卫岗位职责
2014/03/16 职场文书
十周年庆典策划方案
2014/06/03 职场文书
新文化运动的口号
2014/06/21 职场文书
2015年团支部年度工作总结
2015/05/27 职场文书
2015年度学校应急管理工作总结
2015/10/22 职场文书