网络爬虫的完整技术体系
优采云 发布时间: 2020-05-02 08:08这四个层次的功能原理解释如下。
1、网络联接层:主要有TCP Socket联接的完善、数据传输以及联接管理组成。由于目前Web服务器支持的HTTP/1.0或1.1合同,在响应爬虫的恳求以后并不会关掉TCP联接,同时HTTP/1.1支持管线模式,因此当爬虫在多次抓取一个网站的页面时,Socket联接的完善、断开及URL恳求和结果的接收须要根据一定的次序进行。在爬虫执行过程中,可能须要重新联接Web服务器的情况,为了减少域名到IP地址转换的时间,爬虫一般要支持DNS缓存。
2、页面采集层:主要包括对URL的处理大数据网络爬虫原理,从中提取域名,并根据robots规范决定URL的抓取许可,同时在面对诸多的爬行任务时,需要根据一定的搜索策略来决定URL的抓取次序。在抓取页面时大数据网络爬虫原理,如果涉及到动态页面,可能须要考虑在爬虫中实现Session机制。最终的URL命令及结果是通过HTTP合同数据包发送的,其中的腹部信息中可以指定cookie信息。
3、页面提取层:该层完成了HTML文本信息的处理,主要是从中提取超链接、正文信息等内容,因此须要根据相应的HTML编码规范进行。同时,由于不同网站对Web页面信息的编码方法并不完全相同,例如UTF8、unicode、gbk等等,在解析文本信息时须要考虑页面的编码方法。当然目前有好多的开源框架支持页面解析,包括lxml、BeautifulSoup等,需要把握一些相应的规范,例如xpath。
4、领域处理层:这是指一些特定类型爬虫须要完成的功能,对于普通爬虫而言,这层并不需要。这些领域处理主要有:主题爬虫、DeepWeb爬虫,因此须要一定的文本剖析技术来支持,包括文本动词、主题建模等。
作者编绘的《互联网大数据处理技术与应用》专著(清华大学出版社,2017)、同名公众号,专注于大数据技术的相关科学和工程知识传播,同时也为读者提供一些拓展阅读材料。欢迎选用本书做大数据相关专业的教材,有相关教学资源共享。