您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 基于Python的医学数据爬取及分析处理
信息技术与信息化计算机应用技术基于Python的医学数据爬取及分析处理苗玥*刘晓勇金佳妮李可心MIAOYueLIUXiao-yongJINJia-niLIKe-xin摘 要本文主要研究了网络数据的爬取及对爬取的DICOM文件的读取及分析处理过程,为疾病的预防和风险建模提供一定的借鉴意义。关键词爬虫;数据分析;Python;DICOMdoi:10.3969/j.issn.1672-9528.2019.04.016在大数据背景下,医疗卫生事业的数据正在以惊人的速度呈几何倍数增长。而对这些数据的获取及分析,有助于疾病的成因和影响因素的研究,对人类健康水平的提高具有重大意义。然而,很多数据存放在不同的系统中,系统间缺乏联系,形成数据孤岛,很难对这些数据加以分析和处理[1]。因此,采用网络爬虫技术对允许爬取的网站进行数据爬取,可以解决数据孤岛的情况。在获得数据之后,对数据进行清洗和整理,通过数据分析最终可以建立疾病风险评估和预测的模型,从而对疾病的预防有一定的指导意义。本研究结合构建疾病预防模型的需要,对数据进行获取、解析、整理,为疾病预防研究所需数据进行规范化管理,降低了数据采集的成本,提高了工作效率。同时也可以为患者及未患病的人群提供疾病预防措施,从而降低发病率。1数据爬取及处理方法1.1爬虫原理爬虫就是对网站请求并提取数据的自动化程序。其中请求,提取,自动化是爬虫的关键。使用统一资源定位符(UniformResourceLocator,URL)地址封装必要的请求参数,以模拟浏览器请求访问WEB服务器的方式,使用超文本传输协议HTTP(HypertextTransferProto-col)获取网站服务器端的许可,返回原始页面并解析数据。搜索引擎的网络爬虫抓取工具属于常见网络爬虫[2]1.2获取网络数据的过程利用爬虫程序模拟浏览器发送请求,即发送一个Re-quest,在Request中包含有请求的头部、请求体等,请求头中如果没有配置user-agent客户端,服务端可能将其视为非法用户,并在登录时使用cookies存储登录时的cookie信息。如果服务器能响应正常,它获得包含以下内容的一个响应,其中包含:Html、Json、图片、视频等内容。利用正则表达式RE模块、Json、第三方解析库BeautifulSoup、Py-Query、XPath等对获取的Html内容进行解析。最后解析图像等二进制数据,以二进制可写的方式写入文件中。具体过程:浏览器提交请求---下载网页代码---解析成页面---数据保存。Request模块缺陷是不能执行JS和CSS代码[3]。1.3对于反爬虫的处理在短暂的时间内,以一个固定的IP快速大量的访问同一个网站,管理员认为是一些非法操作,会把这个IP给封了,爬虫程序自然也就不能起作用。解决方法:比较成熟的方式是:就是通过IP代理,以不同的IP进行访问,这样IP就不会被封掉了。可是IP代理的获取本身就是一个很麻烦的事情,网上有免费和付费的,但是质量都层次不齐。所以我们需要设置一些代理服务器,每隔一段时间换一个代理,就算IP被禁止,依然可以换个IP继续爬取,具体代码如下。如果是企业里需要的话,可以通过自己购买集群云服务来自建代理池。importurllib2httpproxy_handler=urllib2.ProxyHan-dler({“http”:“124.88.67.81:80”})。本研究主要通过设置一些代理服务器反爬虫获取医学网站的数据,然后处理非结构化的医学数据。*内蒙古科技大学包头医学院计算机科学与技术系内蒙古包头014000[基金项目]包头医学院“花蕾计划”项目(大学生创新训练):“基于Python的医学数据挖掘”,项目编号为:2018BYJJ-HL-76nullproxy_handler=urllib2.ProxyHandler({})proxySwitch=TrueifproxySwitch:opener=urllib2.build_opener(httpproxy_handler)2019年第4期56
本文标题:基于Python的医学数据爬取及分析处理
链接地址:https://www.777doc.com/doc-8736589 .html