基于Python的Web数据获取及实现

2022-01-17 06:20徐亮亮
电子元器件与信息技术 2021年9期
关键词:网页编程模块

徐亮亮

(常州铁道高等职业技术学校,江苏 常州 213011)

0 引言

随着网络科学技术的不断发展,我们的生活被各种媒介包围着,也在各个方面得到数据网络的支持。而经过网络采集的系统数据,人们对于容量极其庞大的互联网世界,也越来越追求其所带来的时效性的应用价值。

采集是进行大数据处理的最基础的一个环节,但也同样是所有后续信息进行分析挖掘的基础前提。所以做好数据信息的采集可以为数据的深入价值提供优质的条件。对数据信息的采集的方法和过程由于信息种类的不同,也会有所区别。有些是直接对网络信息进行直接收集,有些则是在特定设置的传感器的作用基础上,得到数据信息。诸如一些交通摄像头中,就会装置特定的GPS或者是交通规则智能感应捕捉系统,又或者是停车是否在规定位置的感应识别系统,都会对相应的交通情况做出信号数据信息的采集,再进行相应的系统识别处理。本文的研究设计是针对各种网络中的网站、论坛、博客等进行的网络搜索界面的信息智能捕捉,清洗过滤掉无价值信息,将包括用户访问网页时的浏览历史图片文字信息以及浏览时长日期等数据,然后再结合个人身份信息进行分类归纳存储。

本文的设计主要是利用Pvthon编程语言为基础,全球广域网Web为信息收集对象,分析了该网站在HTTP网络协议下的网页界面的信息抓取原理,并将scrapy框架实验应用于淘宝软件中,证实web进行matplotlib可视化抓取显示于页面上的数据操作效率有所提高

1 Web大数据采集技术

1.1 web数据抓取

Web数据抓取技术是利用某种编程方法对网络页面信息收集并加以智能筛选提取的一种方法。该技术是一种模拟浏览网站后台管理人员的操作,获取网页中经过特定编程呈现的格式化浏览信息,包括JSON、access结构格式化的信息,然后再通过相关技术软件的分析提取处理,去除除了文字信息外的框架,提炼纯粹的非结构化信息数据,并统一格式保存在文件当中[1-2]。

1.2 web数据抓取的方法

随着人们对网络信息需求的增大,网络信息的种类趋向于复杂化,更多的信息在网站页面的嵌入呈现方式也更丰富多元。网络信息的呈现不只是网页表面的本体图文数据信息,还包括网页浏览操作对象的之外的个人信息,这些个人信息可以显示操作者此时的地理位置、登录账号信息、浏览时长等等[3]。此外,还有一些对网站搜索查询时的信息。对于这些信息的获取,需要的不仅仅是行之有效对应的操作手法,对于一些不规则隐藏的数据信息,也要有相应的对策方式才能够对潜在深入的信息有效精确提出来,发挥其重要价值。

1.3 webscraping的作用

传统人工对网页信息的抓取方式可能就是普通常见的复制方式,很容易出现文字遗漏现象,又或者是复制信息不到位不准确错误的现象。所以相对于这种现象,webscraping技术相对来说是利用计算机软件程序进行信息的获取,排除人工干预情况的发生,提高效率。传统人工信息抓取需要满足浏览器页面对相关结构化HTML数据协议,在复制相对应的格式文字过程中,要下载经渲染排布的网络结构,局限性相对很大,有的甚至设置不可抓取的格式,就难以完成基础的信息采集操作[4]。而针对这种情况,webscraping技术通过本身的设置代码操作,一系列的程序呈现都会自动生成,只需进行HTML数据抓取即可,提高精确度,在出现信息抓取错误时,软件机制还能够自我修改纠正。

2 基于Python的web数据采集的实现原理

2.1 机理

Python的计算机语言程序在编程中是对各种操作对象进行直接运行的方式,数据库容量大、功能强大。相对于其他设计语言,Python的计算机语言对于使用编写者来说更加的清晰易懂,所以对其修改维护也就越方便,这对于web scrapin技术的开发应用就带来了的未来可操作性[5]。所以使用该计算机语言进行编程,可以为web scraping开发提供极大的便利性。基于Python的web数据采集的实现过程,是通过HTTP模块、re模块、cookielib模块、XPath技术完成的。主要流程是在web scraping软件技术的支持下,利用HTTP的网络协议,进行网页界面信息结构化解析,web形成操作应答处理,re模块对相对应的结构化信息进行数据提取实现图文内容的读取。接下来就要对读取内容进行下载存储。主要由URL参数负责下载路径和文件位置的处理提示。根据信息量的实体情况,就会在data对象窗口进行Timeout参数请求操作的实现,如果数据信息是空的,系统就会自动处理出现GET的请求,反之如果是实体量时,就会发出实体请求表示其未排空并超出规定时间[6]。在进行urllib2、URLopen修改调解时,通常会对对应的所要提取的参数信息有以下两种处理结果和情况:

一是如果HITTP出现错误。出现页面上有此请求超时错误显示的原因如果是web网站的服务器本身出现某种故障,就会导致整个系统在运行时的代码编程出现错误,所以这两种对象的异常会被捕捉并识别判定。

二是HITTP未出现错误。urllib2、URLopen修改调解就会能够正常运行并返回文件对象。以read方法抓取信息内容。信息内容的结构格式如果是正常HTTP格式,就只需要下载到对应指示文件存储位置当中,如果是压缩包形式,还需要先进行解压包处理。

2.2 HTML解析模块

上文提到HTML模块主要实现网页信息页面与抓取技术程序之间的交互关系和操作,在得到的初步网络数据由于属于结构化格式,所以重新下载到新的文件中就需要保证其适应性,所以对初步信息的重新编码是有必要的。在Python标准库中,具体的操作流程就是把这些字符对象用re模块进行读取之后,对字符对象的content-type得到获取,然后再重新进行程序语言规划成统一的Unicode类型,保证存储时能够统一编辑可操作[7]。

XPath可以对字符信息进行文档格式属性进行指示,有效解决字符的空白字、标记等格式不规划情况。

3 基于Python的Web数据分析与应用

3.1 Scrapy爬虫设计

进行网站数据的爬取,就需要对网站初始爬取内容进行分析归纳。利用抓包工具获得该信息网站所来源的初始数据地址,然后找到正确的地址之后,进行数据信息的筛选,如果是有效的,系统就会确定并保留,否则接着下一个URL爬取队列进行循环的工作,直至满足系统设置的抓取条件,完成整个操作流程。具体操作如图1所示。

图1 爬虫设计操作流程

3.2 数据的清洗

由于数据里有许多“脏数据”,所以在抓取到数据后的第一个步骤就是做清洗处理,以排除缺失值和数据异常的情况。具体的计算机编程是借助于numpy语言函数里的describe()进行数据的筛选,然后对这些数据符号的数值进行分类归纳,算出它们的极大值,平均值,中位值,极小值,方差等来进行区分辨别。最后将异常值缺失值进行转换、规划的可视化分布操作,就可以得到相应的数据图,方便之后的数据分析。

4 结语

随着大数据应用被人们广泛应用于各个领域,计算机研究开发者应该致力于利用更智能优化的系统程序,让客户以更快的方式精准获取有价值的信息,这也是未来大数据网络技术研究的重点。通过本文研究发现,web抓取技术的程序化操作避免了人工操作的失误率,提高了工作效率和信息获取率,能最大限度地发挥信息采集的作用,所以该技术值得推广和应用。

猜你喜欢
网页编程模块
28通道收发处理模块设计
“选修3—3”模块的复习备考
编程,是一种态度
元征X-431实测:奔驰发动机编程
编程小能手
纺织机上诞生的编程
基于CSS的网页导航栏的设计
基于HTML5静态网页设计
基于URL和网页类型的网页信息采集研究
网页制作在英语教学中的应用