__ __ _ _ _ ____ ___ __ __
\ \ / /__ || \\ // || //\ // \| | || || __ // \\
\ \ /\ / / _ \ || \\// || // \\ //\___ | __/ || __||/ _ \||__//
\ V V / __/ || //\\ ||// \\// \| ||/ || __/|| \\
\_/\_/ \___/ || // \\ ||/ \/ \___/| ||\__//\___/|| \\
高效微信爬虫,微信公众号爬虫,公众号历史文章,文章评论,文章阅读及在看数据更新,可视化web页面,可部署于Windows服务器。
基于Python3 ==> flask/mysql/redis/mitmproxy/pywin32等实现
查看及安装依赖文件 requirements.txt
pip install -r requirements.txt
支持操作系统:Windows10 x64
必备软件:WeChat 微信PC版(非微信网页版)
开发环境:Python3.7(Python3.5+)+ DB(MySQL、redis)
移步☞ https://github.com/xzkzdx/weixin-spider/releases/tag/static%26templates 下载必要文件。
解压缩到webapp/目录下,提取目标文件webapp/static/及webapp/templates/
创建数据库模型的方式:python create_model.py
1、修改webapp/models.py中Comment类下content = db.Column(db.String(800))以修复评论中出现长内容的评论
2、新增三个.sh运行脚本 (在使用前请务必阅读完下方 "准备工作" 部分,以免脚本无法正常运转)
1、运行脚本前请务必登录微信PC版并双击打开 “文件传输助手” 或 settings.py中指定的对话框(例如打开和自己对话的对话框)。
2、双击执行脚本startweb.sh启动web服务,前提是所需依赖正确安装及数据库(库、表、字段)正确并开启redis服务。
3、双击执行脚本startproxy.sh启动本地系统代理为程序正常运行提供环境,前提正确安装mitmproxy库,可编辑脚本更改端口。
4、请务必在 设置 ==> 网络 ==> 代理 ==> 手动设置代理 中打开使用代理并将IP地址修改为127.0.0.1 端口修改为默认8080或修改后的端口。
5、双击执行脚本startmonitor.sh启动爬虫。
确定使用环境安装完毕的情况下开始这一步,IDE建议使用PyCharm
将使用到默认端口:5000 8080 请确保端口不冲突,或者您可以修改端口
1、确定mysql 、redis服务开启状态
# 创建mysql数据库 weixin_spider 字符集utf8mb4
# 查看表结构是否生成正确
2、确认webapp/目录下存在目标文件static/及templates/
3、使用 不太重要的微信小号 登录微信PC版(使用自己常用的账号登录也没有问题,为你考虑,万一被禁怎么办)。
# 登录微信PC版后,找到 文件传输助手 对话框, 双击 文件传输助手 ,文件传输助手会自动弹出单独的对话窗口来,此时及之后就不要关闭了
4、依次运行py脚本(亦可运行.sh文件代替)
运行 wx_monitor.py
# 运行 manage.py 打开网页 http://127.0.0.1:5000/
# flask默认开启端口 5000 可自行修改端口, 默认开启debug
# 成功开启web界面后执行以下
# 在当前tools目录内打开cmd窗口(或cmd切换到tools文件目录内)
# 执行 mitmdump -s ./addons.py 开启miltmproxy代理 默认端口 8080
# 出现以下两行,及成功开启,否则核对错误。 当前cmd下ctrl + c可退出mitmproxy代理
# Loading script ./addons.py
# Proxy server listening at http://*:8080
# 打开系统设置,找到网络里的代理,开启使用代理服务器 地址:127.0.0.1 端口:8080 保存
5、完成以上无误后,网页端输入公众号文章链接进行添加公众号,启动或暂停用来控制你的公众号任务
注:
对于项目跑不起来及模块加载有问题或模块不存在的情况,建议使用PyCharm启动项目并运行相关脚本
如果发现公众号只爬取部分,请核对使用的微信号是否关注了该公众号,在关注的前提下使用
建议先通过文章链接加载需要爬取的公众号列表,再按需启动,以免IP限制访问详情导致导入公众号失败
按照以上步骤在服务器上安装必要软件及环境后,在项目下依次运行以上步骤,运行成功后即可通过ip或域名进行网页访问
整体步骤将不会太大改变,关于音频及视频显示将在后续更新,对于部分单独发布的图片、音频、视频、分享链接的获取也将在后续更新
在tools模块,有部分没有用上,但也实用的功能,可自行按需扩展
想要了解更多对于pywin32操作微信PC版的功能,可访问: https://github.com/xzkzdx/WeChatPC
部分功能将在后续完善
font-spider-plus使用笔记, fsp是一个腾讯的大佬改版后的font-soider 主要思路是 采集线上网页使用到的字体,从字体文件中分离出来,完成大幅度压缩, 1,npm i font-spider-plus -g 2,css中定义好font-face (ttf需要存在),其他配好可自动生成,不配则不会, 有个坑,如果是webpack打包的stylus,sass等,配上不存
@media的问题没碰到,但是我的却一直报错. 后来把样式表里的文件全部删除,居然好用了. 然后逐类删除,逐行删除,发现问题在 .clearfix:after{content: "\20";display: block;visibility: hidden;clear: both;font-size: 0;height: 0;line-height: 0;} .clearfix{*zoom: 1;
背景 为了丰富页面的文案效果或者为了统一不同客户端设备预置字体包不同导致的客户看到的文案效果不一样。前端开发工程师会使用自定义字体系列@font-face来解决问题。 自定义字体系列的问题 自定义字体系列到目前为止使用起来都不是尽善尽美的,我们按照时间来阐述各个阶段的问题。 第一阶段 问题: 通常一个全量字体包的体积是十份大的,以思源黑体举例,只ttf文件格式的所有权重字体(regular、bol
爬虫(Spider),反爬虫(Anti-Spider),反反爬虫(Anti-Anti-Spider),这之间的斗争恢宏壮阔... Day 1 小莫想要某站上所有的电影,写了标准的爬虫(基于HttpClient库),不断地遍历某站的电影列表页面,根据 Html 分析电影名字存进自己的数据库。 这个站点的运维小黎发现某个时间段请求量陡增,分析日志发现都是 IP(1.1.1.1)这个用户,并且 user
1、安装插件的时候npm要低于5.0版本,否则装不上 2、安装Python的2.X系列版本 来兼容插件 3、压缩字体的时候不要有英文和空格 4、自定义字体名称的时候不要和系统或者已有的字体名称有命名冲突 转载于:https://www.cnblogs.com/yanliangnh/p/7373584.html
需要安装node.js npm install font-spider -g 安装字蛛 可能会报很多错 检查是否安装完成 font-spider --version 打包: doc命令进入目录所在位置 然后font-spider *.html或者font-spider 文件所在目录下的*.html 注:引入文件因为ttf 类似otf会找不到文件 转载于:https://www.cnb
需求: 根据甲方要求,使用UI中指定字体 移动端默认显示系统默认字体,非系统默认字体需要自行引入字体包 字体包过大,字体包通常在几MB,严重拖累页面加载速度 分析: 文本内容为固定内容,不需要更新 文本内容大多为常用文字,大多文字用不上 插件: font-spider node 安装插件方法:npm install font-spider -g 操作: 安装插件 提取项目文字: 创建一个临时ht
SpiderMonkey 是由 Mozilla 开发的 Javascript 引擎,它由 C/C++ 编写而成。Mozilla 在其多个产品中使用了该引擎,包括 Firefox 浏览器。 python-spidermonkey 让 Python 程序员可以使用 Python 语法来读写 Javascript 代码。 要安装 python-spidermonkey 首先需要安装 SpiderMonk
展开全部 从这个包的e5a48de588b63231313335323631343130323136353331333365653933安装脚本来看setup.py,好像是不支持的:# Debug builds are useful for finding errors in # the request counting semantics for Spidermonkey if DEBUG: c
_ _ _ _ __ _____(_)_ _(_)_ __ __ _ __ _ _ __ ___ ___ | |__ ___| |_ __ ___ _ __ \ \ /\ / / _ \ \ \/ / | '_ \ / _` |/ _` | '_
weixin-robot 是一个微信机器人,是本人在学习使用 Node.js 的过程中,为激发自身的学习热情而做的项目。 功能 已经实现的功能 文字信息的转发 图片的转发 尚未实现的功能 对微信消息中连接消息的转发 引入持久化存储,记录每次转发的消息 完善log日志(目前很多log语句被注释掉,log的格式也不一致)
现在微信越来越火,基于微信的公众号和服务号越来越丰富,单一的微信管家系统已经满足不了微信的需求。Jeecg社区推出插件式开发框架,P3-weixin 微信插件式开发框架,适合于微信管家系统,扩展第三方插件,插件以JAR形式存在,让微信营销更灵活。 架构技术说明 1.P3-weixin 采用SpringMvc + Mybatis + Velocity+ Maven(构建) 框架技术 2.插
简介: weixin-popular 包括微信公众平台基础API与支付API,提供便捷的API调用接口. API 列表: TokenAPI access_token 获取 MediaAPI 多媒体上传下载(临时素材) MaterialAPI 永久素材 MenuAPI 菜单 MessageAPI 信息发送(客服消息、群发消息、模板消息) PayAPI 支付订单相关接口 PayMchAPI 支付订
JFinal Weixin 是基于 JFinal 的微信公众号极速 SDK,只需参考 Demo 代码即可进行极速开发。自 JFinal Weixin 1.2 版本开始已添加对多公众号支持 0、Maven 坐标 <dependency> <groupId>com.jfinal</groupId> <artifactId>jfinal-weixin</artifactId> <ver
微信SDK 提供微信登陆,公众号管理,微信支付,微信消息的全套功能 文档目录 快速开始 微信消息 微信支付 微信登陆 微信公众平台 欢迎提交Pull requests 如果需要单独使用其中的某些模块,可以见文档目录的具体模块 如果需要组合在一起可以参考快速开始 目录 安装 功能 异常 用法 参数 初始化 微信消息 微信登陆 微信支付 微信公众号 安装 使用pip sudo pip install