写论文,没数据?R语言抓取网页大数据

纵观国内外,大数据的市场发展迅猛,政府的扶持也达到了空前的力度,甚至将大数据纳入发展战略。如此形势为社会各界提供了很多机遇和挑战,而我们作为卫生(医学)统计领域的一份子,更要把握好机会。放眼全球,大数据的应用规模仍在持续扩张,几乎每个行业都将目光瞄准了大数据背后的巨大价值。未来五到十年,是我国推进大数据发展的关键时期,打造高效的大数据应用机制和产业链迫在眉睫。

空格根据当前大数据行业发展的分析,我们着手大数据不妨从“可视化数据抓取”开始考虑。这里提到的可视化数据抓取,主要指对互联网网页数据的抓取,这样可以实现大数据应用的平民化。当前我们已经可以通过简易的网页数据抓取工具,对其所需的网页数据进行抓取,如某知名网页数据抓取工具“**采集器”(收费)。已有的互联网数据抓取、处理、分析,挖掘软件,可以灵活迅速地抓取网页上散乱分布的数据信息,并通过一系列的分析处理,准确挖掘出所需数据。这样带来的高效、便捷和平民化是不言而喻的。

空格今天小编作为大数据行业的一员,基于广受欢迎的R软件,给大家介绍如何实现网页数据抓取技术。对,是R!它除了强大的统计分析功能,其网页抓取的能力也是不可小觑的,尤其是Hadley写的R包rvest,可谓把复杂的事情简单化。使用R语言进行网页数据的抓取,最大的优势在于获取数据后强大的数据处理、分析以及可视化功能。

R语言实例

空格下面以rvest包抓取广州的空气质量数据为例进行讲解。

网页数据如下图:

#加载程序包

library(rvest)

#找到要抓取数据的网址

url="http://www.pm25s.com/guangzhou.html"

#解析网址内容

web=
read_html(url,encoding="UTF-8")

#截取如上图空气质量数据

aqi=web %>%
html_nodes("span") %>%
html_text()#注意!很多朋友在这一步会出现乱码的情况

aqi=aqi[8:127]

#将截取的数据整理成数据框

aqi=matrix(aqi,ncol=10,byrow=T)

aqi=data.frame(aqi)

for(i in 1:ncol(aqi)){

aqi[,i]=as.character(aqi[,i])

aqi[,i]=gsub("\"","",gsub("\\n","",aqi[,i]))

}

names(aqi)=aqi[1,]

aqi=aqi[-1,]

aqi

如果一切正常,将会出现如下结果:

空格至此,已经实现了R软件对网页数据的抓取,后续可以对空气质量指数做时间序列以及空间分布的展示,当然上述仅仅是大数据的皮毛,还有很多东西可以探索并拓展。比如,针对网页数据的抓取,若能实现动态实时抓取,才会发挥大数据的价值。

结束

空格学会了上面的小技能,大数据应用不再是单纯的喊喊口号!当然,可以实现网页数据抓取的软件还有很多,比如python、sas、excel等等,有兴趣的朋友可以尽情尝试。美国市场研究公司IDC发布报告显示,全球大数据技术及服务市场在2016年将达238亿美元,激活我国大数据的资产价值,开启大数据新生态的目标仍需社会各界的共同努力!

写论文,没数据?R语言抓取网页大数据的更多相关文章

  1. 转 PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)

    PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)   通过curl_setopt()函数可以方便快捷的抓取网页(采集很方便),curl_setopt 是php的一个 ...

  2. PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)

    通过curl_setopt()函数可以方便快捷的抓取网页(采集很方便),curl_setopt 是php的一个扩展库 使用条件:需要在php.ini 中配置开启.(PHP 4 >= 4.0.2) ...

  3. 大数据基础--R语言(刘鹏《大数据》课后习题答案)

    1.R语言是解释性语言还是编译性语言?   解释性语言 2.简述R语言的基本功能.   R语言是一套完整的数据处理.计算和制图软件系统,主要包括以下功能: (1)数据存储和处理功能,丰富的数据读取与存 ...

  4. R语言爬虫:使用R语言爬取豆瓣电影数据

    豆瓣排名前25电影及评价爬取 url <-'http://movie.douban.com/top250?format=text' # 获取网页原代码,以行的形式存放在web 变量中 web & ...

  5. 抓取网页中数据 -----51book中城市码

    ================== 获取网页中span标签里面的t_id的值 public function getpreg(){ $www = 'http://monkey.test.tripb. ...

  6. 一个我经常用到的采集网页数据抓取网页获取数据的PHP函数类

    class get_c_str { var $str; var $start_str; var $end_str; var $start_pos; var $end_pos; var $c_str_l ...

  7. Asp.net 使用正则和网络编程抓取网页数据(有用)

    Asp.net 使用正则和网络编程抓取网页数据(有用) Asp.net 使用正则和网络编程抓取网页数据(有用) /// <summary> /// 抓取网页对应内容 /// </su ...

  8. 如何使用JAVA语言抓取某个网页中的邮箱地址

    现实生活中咱们常常在浏览网页时看到自己需要的信息,但由于信息过于庞大而又不能逐个保存下来. 接下来,咱们就以获取邮箱地址为例,使用java语言抓取网页中的邮箱地址 实现思路如下: 1.使用Java.n ...

  9. PHP的cURL库:抓取网页,POST数据及其他,HTTP认证 抓取数据

    From : http://developer.51cto.com/art/200904/121739.htm 下面是一个小例程: ﹤?php// 初始化一个 cURL 对象$curl = curl_ ...

随机推荐

  1. ListCtrl使用指南

    http://blog.csdn.net/bqw2008/article/details/2047489 Windows ListCtrl使用技巧1. ListCtrl 风格       LVS_IC ...

  2. RabbitMQ安装到使用入门

    一.安装erlang1.sudo vim /etc/yum.repos.d/rabbitmq-erlang.repo,将如下内容复制粘贴进去后保存:[rabbitmq-erlang]name=rabb ...

  3. iOS 更新日志 - 持续更新中

    本文只是为了简单记录一下每个正式版本发布时间和更新内容,只有这个初衷,从2019年9月25日开始,将会持续更新. iOS 13.1 - 2019年9月25日 iOS 13.1 iOS 13.1 包括错 ...

  4. CentOS使用rpm离线安装mariadb

    本文不再更新,可能存在内容过时的情况,实时更新请移步原文地址:CentOS使用rpm离线安装mariadb: 环境: CentOS Linux release 7.6.1810 (Core) mari ...

  5. 刷屏的海底捞超级APP究竟是怎样与阿里云合作的

    海底捞正式发布了千人千面超级App已有两月,这家餐饮企业总能带给人们不一样的创新能力.谁能想到25年前从四川起家的火锅店,现在门店遍布国内近100座城市,已开门店超400家,海外门店也有50多家,全球 ...

  6. IOS开发之基础oc语法

    类 1.类的定义: 类=属性+方法: -属性代表类的特征 -方法是类能对变化做出的反应 类定义的格式:类的声明和类的实现组成 -接口(类的声明):@interface 类名:基类的名字 .类名首字母要 ...

  7. 移动端Web适配单位rem的坑,oppo r9手机出现错位bug

    我们做了一个抽奖的H5活动页面,被一个oppo R9手机客户反馈,抽奖的转盘错位了.刷新了好几次都不行.网上百度一搜真的有部分安卓手机有坑.赶紧修复bug.分享完整的rem.js代码出来.各位看官自己 ...

  8. 原生JS实现动态时钟(优化)

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  9. CentOS6.5下源码安装MySQL5.6.35

    接上一篇文章使用RPM包安装MySQL,确实很方便.但是安装后却不知道各文件保存在哪个文件夹下!尝试使用源码安装~本文主要参考:CentOS 6.4下编译安装MySQL 5.6.14一.卸载旧版本 . ...

  10. C#——找出实现某个接口的所有类 - Hello World - CSDN博客

    原文:C#--找出实现某个接口的所有类 - Hello World - CSDN博客 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u0125260 ...