位置: 编程技术 - 正文

用好anyproxy提高公众号文章采集效率

编辑:rootadmin

影响因素主要会有以下几点:

1、网络环境不佳;

2、手机或模拟器中微信客户端崩溃;

3、其它一些网络传输错误;

因为我比较看重采集系统的运行成本,这个成本包括硬件投入,运算力投入和占用的人工精力。所以必须提高运行的稳定性。因此如果采集中断,必然增加人工精力的成本。所以针对这一点我对anyproxy做了一些进阶的改造,并且借助了其它一些工具提高了运行效率。以下就是具体的解决方法:

一、代码升级

1)微信浏览器白屏

解决方法:修改文件requestHandler.js,还是在rule_default.js同级目录下,(mac系统/usr/local/lib/node_modules/anyproxy/lib/;win系统评论区网友cnbattle提供C:UsersAdministratorAppDataRoamingnpmnode_modulesanyproxylib)

在代码中找到proxyReq.on("error",function(e){这个函数,并修改内容

这样当发生错误时,会返回一个刷新当前页面的js;这样程序就能继续下去了

2)替换所有图片,减轻浏览器负担

首先需要制作一张非常小的图片,我做的是1x1像素,png透明图;放到任意文件夹里。然后修改文件rule_default.js的代码:

在文件开头有许多var的位置加入以下代码

在下面的代码中找到shouldUseLocalResponse : function(req,reqBody){函数,在函数内插入代码:

继续在下面的代码中找到dealLocalResponse : function(req,reqBody,callback){函数,在函数内插入代码:

这三段代码就会将公众号里面的所有图片替换成本地图片,减轻网络传输压力和浏览器占用的内存,有效的提高运行效率;

3)禁止手机或模拟器访问一些无用的和会导致错误的网址

同样在rule_default.js里找到代码replaceRequestOption : function(req,option){函数,在函数内部插入代码:

这个修改之前的文章也提到过了,在这里重新再详细介绍一下。他的用途很多,不同的手机和模拟器都有可能访问一些无用的地址导致设备变慢,通过这个代码就可以阻止访问。

二、使用pm2管理anyproxy进程

pm2 是一个带有负载均衡功能的Node应用的进程管理器.

当你要把你的独立代码利用全部的服务器上的所有CPU,并保证进程永远都活着,0秒的重载, PM2是完美的。它非常适合IaaS结构,但不要把它用于PaaS方案(随后将开发Paas的解决方案).

主要特性:

内建负载均衡(使用Node cluster 集群模块)

后台运行

0秒停机重载,我理解大概意思是维护升级的时候不需要停机.

具有Ubuntu和CentOS 的启动脚本

停止不稳定的进程(避免无限循环)

控制台检测

提供 HTTP API

远程控制和实时的接口API ( Nodejs 模块,允许和PM2进程管理器交互 )

测试过Nodejs v0. v0. v0.8版本,兼容CoffeeScript,基于Linux 和MacOS.

首先安装pm2

在pm2环境下运行anyproxy

现在anyproxy就在pm2的环境中运行了

之后还有几个pm2的命令可以帮助管理和监控anyproxy

特别提示:pm2运行后,终端窗口是可以关闭的。

使用pm2管理anyproxy进程,最重要的目的是:anyproxy因为错误而退出程序之后,pm2可以另anyproxy自动重启。

三、取消sudo密码,并使pm2开机自启

以下内容是在mac环境下的方法,windows也应该有类似的方法,如果了解的网友可以私信发给我。

1)首先取消sudo的密码

运行命令:

找到代码:

修改为:

这样sudo的密码就取消掉了,然后就可以将pm2加入到开机自启动中了

2)设置开机自启

在终端中输入命令:

然后进入编辑模式,按键盘字母i开始编辑,粘贴代码:

编辑完之后,按esc,再键入命令wq保存退出编辑模式。

再执行命令:

这样一个可执行文件就建立好了

然后打开mac系统的“系统偏好设置”,找到“用户与群组”,在左侧选择当前用户,右侧选择登录项;然后点击+号,找到当前用户的根目录(可以按shift+command+h快捷键),选择autoexec.sh文件,添加到登录项中,就可以开机自启动了。

经过以上的几项设置之后,anyproxy系统就会比原来更加稳定,其实主要原因是模拟器或手机的不稳定导致的anyproxy发生的错误。经过实际测试,anyproxy目前可以长时间运行不崩溃。而微信客户端还是在运行大约6个小时之后崩溃,以2秒翻一页的速度,采集总数大约1万个页面。如果不采集阅读量,就可以是1万个公众号的历史消息页。

微信客户端的崩溃现象是退出微信浏览器,停留在查看公众号资料页面。所以如果希望再进一步提高自动化,也可以使用触动精灵之作自动化脚本,定时推出微信浏览器,再点击历史消息页。这样应该就可以实现长时间自动化采集了。

PHP写微信公众号文章页采集方法 通过搜狗搜索采集公众号历史消息有几个问题:1、有验证码;2、历史消息列表只有最近条群发内容;3、文章地址是有有效期的;4、据说批量采集还

如何采集微信公众号历史消息页 采集微信文章和采集网站内容一样,都需要从一个列表页开始。而微信文章的列表页就是公众号里的查看历史消息页。现在网络上的其它微信采集器有

php提取身份证号码中的生日日期以及验证是否为成年人的函数 php提取身份证号码中的生日日期以及确定是否成年的一个函数。可以同时确定位和位的身份证,经本人亲测,非常好用,分享函数代码如下:php//用ph

标签: anyproxy提高公众号文章采集效率

本文链接地址:https://www.jiuchutong.com/biancheng/275968.html 转载请保留说明!

上一篇:PHP 闭包获取外部变量和global关键字声明变量的区别讲解(php调用外部接口)

下一篇:PHP写微信公众号文章页采集方法(php推送微信公众号客户消息)

  • 调整以前年度少计提的工资
  • 增值税一般纳税人税率
  • 收不回来的装修钱怎么办
  • 企业从银行借款归还应付账款
  • 视同销售税率如何确定?
  • 集团股份怎么分配
  • 土地使用权出资入股税费
  • 半成品成本核算 一般企业怎么核算
  • 本月没开票怎么报税
  • 个体户需要交税吗要交多少
  • 分期收款如何确认成本
  • 我的初级备考经验--相信自己
  • 广告公司营改增后的会计分录
  • 买入返售金融资产是资产还是负债
  • 个税7月申报7月怎么填
  • 应交税费已交税金借方有余额
  • 固定资产投资增值税进项税额抵扣规定
  • 征信费用会计分录
  • win11系统的电脑中拷贝到U盘中的文件没有了怎么解决
  • 物流运输公司要交税吗
  • 企业自持商品住房定义
  • 铁杆茉莉的养殖方法
  • winspool.drv病毒
  • 确认坏账的会计处理
  • php面向对象面试题
  • php写一个函数,算出两个文件的相对路径
  • 企业应交税费科目
  • 踩雷日记:Pytorch mmcv-full简易安装
  • thinkphp框架怎么用
  • 土地出让金抵减增值税账务处理
  • framework怎么更新
  • php 取字符串 前几位
  • Selenium.Webdriver最新语法教程(附Chrome实例演示)
  • 【JavaScript 刨根问底之】requestAnimationFrame以及延时器
  • 残保金如何缴纳残疾人工资如何扣除
  • 网上税则
  • vue如何实现路由跳转缓存
  • 长期股权投资核算的权益法包括哪些内容
  • 印花税对什么征税
  • 法人不发工资可以吗
  • 固定资产的货币资金包括
  • 企业每年需要做什么
  • 认缴注册资本是什么意思
  • 电子承兑汇票到期提示付款后多久到账
  • sql2000管理工具
  • 承典人是什么意思
  • 土地增值税纳税申报期限
  • 对公允价值套期的认识
  • 物流辅助服务包含哪些内容
  • 伙食费占支出比例
  • 坏账准备是什么类科目
  • mysql %d
  • mysql数据库5.7.27安装
  • 如何防止sql注入及数据安全问题
  • 怎么卸载xp系统
  • windows xp打开服务
  • xp如何改windows7
  • gacrunner.exe是什么
  • awk结果输出到文件
  • win7系统桌面图标设置
  • win7插上u盘显示格式化怎么办
  • linux系统的
  • android怎么ping
  • ExtJS中设置下拉列表框不可编辑的方法
  • 内存优化有哪些方法
  • unity 版本控制
  • 单例 python
  • JavaScript Math.ceil 方法(对数值向上取整)
  • javascript规范
  • javascript编程语言
  • js中的面向对象
  • python动态绑定属性
  • javascript中Date format(js日期格式化)方法小结
  • CLASS_CONFUSION JS混淆 全源码
  • 房租计入待摊费用
  • 税务异地协查系统管理办法
  • 一般纳税人开增值税专票几个点
  • 一般纳税人办理退税流程及手续
  • oecd是什么意思的缩写
  • 银元面值有哪些种类
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设