基于网络爬虫的网页信息获取技术

阅读: 评论:0

北京杂谈2018年6月
基于网络爬虫网页信息获取技术
毛逸恒(西安高新第三中学,西安710065)
【摘要】目前,网络中的信息量飞速增长,这为人们精确地搜集数据增加了困难。网络爬虫的出现很好地解决了这一问题,它可以按照一定的
规则自动获取网络中的信息,并通过解析这些信息抽取有价值的数据。
本文详细阐述了基于网络爬虫的网页信息获取技术,首先简要介绍了网络爬虫技术的研究背景,在此基础上,详细分析了网络爬虫技术的原理及组织架构。
基于这一理论体系,本文实现了定向获取信息的网络爬虫,使数据的精确获取成为了可能。
【关键词】网络爬虫;网页信息获取;
扶余县教育局大数据【中图分类号】TP393.0【文献标识码】A 【文章编号】1006-4222(2018)06-0011-02
目前,网络用户主要利用搜索引擎获取所需要的信息。搜索引擎是指不断获取互联网中的数据,建立网
络信息数据库,并向用户提供查询功能的系统。网络爬虫作为搜索引擎的重要组成部分[1],可以精准地搜集网络中有价值的信息,源源不断地为搜索引擎提供数据保障。
1网络爬虫简介
网络爬虫是自动抓取互联网中信息的程序。互联网中存在各种各样的网页,每一个网页都有其对应的URL (全称U ⁃niform Resource Locator ,统一资源定位符)。一般情况下,人们通过人工的方式从互联网中获取需要的信息,这种获取信息的方式覆盖面小,而且高度消耗人力。网络爬虫解决了这一问题,它可以从一个或者一些URL 出发,访问其关联的所有URL ,并且可以从每个URL 对应的页面中提取所需要的、有价值的数据。
网络爬虫的价值在于可以使互联网中的信息更方便地为人们所用。从网络中获取到需要的信息后,人们可以更方便地学习和利用,也可以对这些数据进行分析,甚至可以基于这些数据设计和实现自己的产品,例如:医疗大数据采集整理系统[2]、新闻阅读器、求职信息公告平台、图书价格对比网站、技术文章阅读平台等。这些产品的数据都来源于互联网,网络爬虫可以自动化地为其提供更全面、精确的信息,提升用户体验。2网络爬虫的架构
蟋蟀王网络爬虫的架构如图1所示,网络爬虫一般包括爬虫调度端、URL 管理器、网页下载器和网页解析器等部分。其中,网络爬虫调度端的作用是启动爬虫、停止爬虫和监控爬虫的运行情况;URL 管理器的作
用是对将要爬取的URL 和已经爬取的URL 进行管理;从URL 管理器中取出一个待爬取的URL 传送给网页下载器,下载器会将URL 对应的网页下载和存储;网页解析器的作用是从下载的网页中解析出有价值的数据和新的URL 。综上所述,URL 管理器、网页下载器、网页解析器这三个部分形成了一个循环,当满足设置的条件时,网络爬虫停止工作。
2.1URL 管理器
URL 管理器的作用是管理待抓取的URL 集合和已抓取URL 集合。互联网中的大部分网页一般都会存在多个指向其他网页的URL ,在网络爬虫工作时,URL 管理器接收网页解
web of science析器中提供的URL ,并进行判断,将未抓取的URL 存储在待爬取的URL 集合中,并且向网页下载器提供新的URL 。为避免重复抓取,URL 管理器将已经下载和解析过的网页URL 存储在已抓取URL 集合中。
URL 管理器的实现方式主要有三种。①可以将URL 集合存储在内存中,使用python 开发时可以采用s
水泥砂浆et 存储,set 可以自动去除集合中重复的元素。②可以利用关系数据库存储URL 集合,创建数据表urls ,分别设置id 、url 、is_crawled 三个字段,id 代表链接的索引号,url 字段存储网页对应的链接,is_crawled 的数据类型为布尔型,0代表链接为待爬取状态,1代表链接为已爬取状态。③利用缓存数据库存储URL 集合,例如redis 。
目前,大型互联网公司多采用性能高的缓存数据库。但是对于个人开发者而言,采用内存存储或者关系型数据库存储即可满足要求。
2.2网页下载器
网页下载器是网络爬虫的核心部件,它可以将互联网上URL 对应的网页下载到本地,以方便后续对网页的分析和处理。一般情况下,网页下载器将网页存储为html 文件、字符串、json 格式等。Python 语言提供了网页下载的基础模块urlib2,该模块支持网页下载、数据提交、cookie 处理、代理处理等功能。除此之外,还存在一些第三方的插件,例如:re ⁃quests 等。
2.3网页解析器
将互联网中的网页下载之后,需要对其进行解析才可以获取有价值的数据。网页解析器实现了这一功能,并且可以从网页中解析出关联的URL 集合传递给URL 管理器。
Python 中常用的网页解析工具有正则表达式、html.pars ⁃er 、lxml 、Beautiful Soup 等。正则表达式可以采用模糊匹配的方式从网页文件中提取数据,是一种非常直观的解析方式。html.parser 和lxml 是python 语言中自带的解析模块,其中后者主要用来解析html 文件和xml 文件。Beautiful Soup 是一个第三方的网页解析库,功能强大,处理高效,支持正则表达式,支持html.parser 、lxml 等多种解析器。
3网络爬虫的实现
本节将实现一个定向获取百度百科词条的标题和简介的网络爬虫,主要步骤分为:分析目标、实现各个模块、运行爬虫获取信息并且进行结果展示。
3.1分析目标
本小节将从URL 格式、数据格式、网页编码等方面分析网络爬虫的抓取策略。
(1)URL 格式。爬虫入口链接为https ://baike.baidu/item/Python ,并且通过观察发现,其相关词条的链接均以“
/
图1网络爬虫架构图
通信设计与应用11八宝煤矿

本文发布于:2023-08-16 07:51:06,感谢您对本站的认可!

本文链接:https://patent.en369.cn/xueshu/366285.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:爬虫   网络   网页
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图