网页源代码抓取工具(浅谈网页源代码抓取工具的缺点及应用技巧!(一))

优采云 发布时间: 2022-02-24 05:04

  网页源代码抓取工具(浅谈网页源代码抓取工具的缺点及应用技巧!(一))

  网页源代码抓取工具作为一个chrome的开发人员,在开发新的,或者从chrome5.0之后推出的开发人员工具的时候,我会考虑升级浏览器版本,比如已经升级到firefox3.0,chrome3.1,chrome3.2或者某些版本。如果是从firefox5.0推出的工具,我会不考虑升级,如果是从chrome5.1之后推出的工具,要么直接加上ccftools(i5,i7之类的),要么再刷新一下源代码抓取页面,一般默认到chrome2012。

  一般来说,都是从开发人员工具开始,从最新版本开始,这个可以得到比较直观的演示。作为测试人员,有些公司也会推出一些工具,但大多数不是用的开发人员工具,而是直接从网页抓取,然后再生成js文件发送给后端做一些定制的优化,那些工具都比较类似,我介绍一下f5大法的缺点。一个开发人员工具,最主要的目的是生成js文件(browserjs)。

  不是原生的javascript,所以在在启动时会特别慢,或者效率很低,等等。为了兼容旧版本,一般会在headfilter中强制生成老版本的source,如果有其他依赖库就会立即执行,不会引入jquery等css资源,不会生成任何关于功能的字符串,不会有语法校验等功能。第二个缺点,f5会绑定主页和页面地址的路径,但通常是自己生成的,不是浏览器内部的路径,比如知乎的路径,谷歌搜索会有偏差。

  这样做,导致后端部分改动如果不牵涉到后端代码逻辑,动态页面依然保持后端代码逻辑完整。如果要去掉后端逻辑,就需要把前端页面爬取下来,然后转换成json或者newjson,然后合并,反正很复杂。第三个缺点是,通常,一个f5会启动很多f5,比如需要启动2万个f5才能不错,而通常为了实现的灵活性,只能启动很少的f5。

  为什么没有f5的无敌版本,因为历史。f5毕竟是基于firefox的渲染引擎制作,因此有非常多的机制在中间转换,效率肯定不如firefox,更别说是webkit下,了。f5在启动启动的时候,爬取还是会从开发人员工具启动,所以经常有启动失败,一般能开一些简单的插件,至少可以比较大限度减少启动失败次数。但这点来说,不如webkit版本的方便。

  其实一些webkit版本的浏览器,js本身是支持f5的,只不过f5启动会比较慢,有些可以在内核里启动,但有些只能通过外部启动,你可以去试试。至于另外一些,比如webkit浏览器版本对于某些组件未在f5中引入,或者某些页面存在直接html上的依赖,f5和页面本身有可能相冲突。f5的配置说到这,没什么配置的可言,就是改headfilter,source,所以即使一些大网站,都不需要修改headfilter,source也。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线