分享-如何利用八爪鱼工具采集微信公众号内容

重点研究了一下八爪鱼这个第三方采集工具,由于八爪鱼是一个收费的软件,所以只能先申请一个体验帐号,体验一下基本的采集功能,但个人觉得该工具由于和搜狗存在接口上的合作,所以其采集功能十分强大,有着别的工具做不到的优势。

先来了解下微信的反扒虫机制(链接过期):

微信公众号的列表链接中都包含一个加密的字符串,以海霞中学的微信公众号为例:

若超过微信后台控制的时间,访问了该链接则会出现:


所以我找到一些免费的采集工具(比如微信派),是需要经常手动更换公众号列表的地址才能进行正常的采集工作。

下面介绍一下八爪鱼和搜狗合作以后,是怎么解决这个问题的。

八爪鱼的采集接口中,有搜狗微信的接口:


采集只需要输入搜狗的搜索结果页面就可以采集到了



搜狗链接我在微信派采集工具中使用结果为采集失败,说明这个链接不是所有采集工具都能识别,至于为什么搜狗微信的搜索结果不会过期,我怀疑可能是因为搜狗和腾讯的关系(腾讯收购了搜狗大部分的股份),腾讯本身就开发好了这个接口给合作伙伴用,所以绿城这边腾讯来做的话也不需要开发,可以直接拿这个接口出来用(连百度都不能直接搜索微信公众号的内容,我现在找到能不过期的微信搜索引擎只有搜狗)。

采集结果:

付费版可以导出数据到数据库以及API、免费版只能导出数据到数据库,10条数据1000积分(积分可以做任务分享获取,也可以买,1000积分1块钱,即免费版每导出10条数据实际还是需要1块钱)。

不知道是不是免费版的原因,我觉得导出到数据库的功能不够强大,只能抓取到的字段进行导入,不能对数据库中的剩余字段进行默认值的写入,这样就不能处理bigclassid、passed等字段,更没办法解决newscontent的问题。专业版可以导入到API接口,可能就能解决。

特别说明:我认为该抓取工具强大的地方就是抓取到的图片路径是完整路径,能保证图片正常显示,不会出现像之前直接复制微信页面到我们的编辑器后图片出不来的情况。


定时抓取、云抓取:

付费版本还有一个好处是支持云采集,即不用每个用户都安装一个八爪鱼的客户端,只需要在我们的服务器上安装一个八爪鱼,并设置一个云采集任务,就可以实现将采集数据发送到对应的学校网站中去。

云抓取服务还可以避免抓取时对网站服务器造成的CPU影响(东莞抓取时CPU占有率瞬间满格,所以抓取活动都安排在半夜2点)。

定时抓取只能在云抓取任务中设置(即定时抓取功能需要付费)


理想的模式,有待进一步和八爪鱼客服确认是否可行以及价格:

我们在自己的某一台外网服务器上部署一个八爪鱼用于配置符合每个学校需求的云抓取任务(每个学校对应的公众号可以是一个也可以是多个,并且每个学校的云抓取任务相互独立),每天定时抓取(甚至可以调用任务控制API在网站后台做一个同步按钮)之后通过API(Http协议)将抓取到的新闻内容保存到每个学校的数据库中(news表和newscontent表),实现公众号的同步工作。

在CMS平台化以后实现更容易,因为所有网站可能都部署在我们的服务器上(云服务器),所以都不需要通过Http协议传输请求,只需要按我们的规则保存到本地数据库就可以了。

加强功能:微信后台数据图形化分析结果可以传递数据到网站后台,所以以后可能网站后台不止能看到网站的发文统计图形,还能看到微信推送的统计图。

最后附上八爪鱼旗舰版的价格(我们不用高并发,所以不用私有云,以后可以部署在我们的服务器上与CMS平台一起集中管理):