解决火车头7.6版本无法采集部分https网站问题
火车采集器是市面上应用比较广泛的一款数据采集工具,相信很多做网站的朋友都或多或少听说过。由于某些原因,目前使用量较多的还是2013年推出的火车头采集器7.6的版本。火车头7.6版本由于发布时间久远,虽然采集器大部分功能都还可以正常使用,但是现在很多网站都从之前的http协议切换到了https协议。

当火车头7.6遇到新版的https协议时,经常无法完成网页请求而无法继续使用,比如部分TLS 1.3加密的网站,用火车头采集会直接请求不到数据,如图
那么针对这种由于https站点协议问题,是否有简单可用的方法来解决呢?
首先最优的方案当然是使用新版的火车头采集器V9版本了,当然某些功能需要付费才能使用,而且费用不菲。那么还有一些其他的办法吗?
答案也是有的,经过测试发现,火车头7.6版只是无法完成对这类网页的请求响应,但是如果能正常获取到网页数据,后面的数据处理都是可以使用的。所以我们需要解决的就是如何让火车头获取到这个源码。
我们可以在本地搭建一个简易http服务,用这个服务去请求源代码,然后用火车头请求这个简易http即可。原理就是给火车头和目标网页中间加了一层中转,从而解决火车头无法直接请求获取源代码的问题。
我把这个流程写成了一个软件,大家可以直接下载打开即可使用。

使用该软件的优缺点:

先说缺点
1,在采集数据时需要该软件保持运行,从而实现请求的中转
2,编写采集规则时,需要在网址前面添加简易http服务的前缀”http://127.0.0.1:8000?url=“,当然这个在采集规则中可以很简单的通过内容替换功能来过滤掉
再说优点:
1,解决了火车头7.6版的部分https站点无法采集问题
2,可以通过修改源代码,在简易http请求中手动添加一些特殊header信息,这些功能在7.6版本中是没有的,但是在v9版本中存在。所以通过这个软件来实现一些v9版本中才存在的功能

使用说明

1,首先双击打开locoy-https.exe,使用时请勿关闭软件
2,制作采集规则,在起始网址处输入http://127.0.0.1:8000/?url=你要采集的网址,其他部分跟正常规则定制是一样的

使用前后的效果对比

有人可能会问这样设置之后采集效率是否会变慢。一般来说,该软件启动的是本地http服务,火车头去请求这个本地http服务是很快的,所以不会有明显的影响

下载地址

代码仓库,期待star:https://github.com/beijiyouyu/locoy-https
软件下载地址:https://raw.githubusercontent.com/beijiyouyu/locoy-https/master/dist/locoy-https.exe
© 版权声明
THE END
喜欢就支持以下吧
点赞0
分享
评论 抢沙发