【R爬虫-1】BBC Learning English

浏览: 1611

傅兴:个人公众号:Rapp

在【R图秀】中,我们已经学会如何从网上抓取数据并进行可视化分析。

为了刻意练习写R爬虫的技能,Rapp又专门推出【R爬虫】系列,和大家分享如何从网上自动获取你想要的数据。


在学习英语的过程中,相信很多人都有和我一样的感受:虽然花了很多时间和金钱,但是总觉得收效甚微,ROI(Return on Investment)很低。

我觉得学好英语和学好R语言有很多共同之处:
1. 要找到适合自己当前水平的学习资料(过于简单是浪费时间,难度过大容易丧失信心)
2. 广泛涉猎各种领域,用英语/R来解决工作和生活中的实际问题
3. 坚持不懈地努力

根据以上几点,我在挑选英语学习资料的时候,设置了3个标准:
1. 难度适中(客观地看待自己的英语水平)
2. 题材广泛,趣味性强(开阔眼界,积累与老外聊(ba)天(gua)时的谈资)
3. 短小精炼(可以利用5-10分钟的时间碎片来学习,容易坚持下去)

最终,我选择的是来自 BBC Learning English 的 6-Minite English
http://www.bbc.co.uk/learningenglish/english/features/6-minute-english

image.png

这个栏目每周都有更新,而且每一期的文档(pdf)和语音(mp3)文件都可以免费下载。我们今天的目标就是用R来自动获取从2014年到2017年的所有pdf和mp3文件。

在动手写爬虫之前,我们需要浏览页面,确定需要获取的内容,并制订爬取策略。

6-Minute English的主页上有2014到2017年每一期(episode)的链接:

image.png

点击图片下方绿色的标题可以进入这一期的页面:

image.png

我们需要获取的目标链接就是页面右上方的 Download PDF/Audio

我们的爬取策略如下:
1. 下载并解析6-Minute English的主页,找出所有episode的链接和时间信息
2. 根据用户指定的起止日期,筛选出部分episode
3. 依次下载并解析每个episode的页面,找到pdf和mp3文件的链接
4. 下载pdf和mp3文件(首先判断pdf和mp3文件是否已经下载,避免重复下载)

具体代码和注释如下:

image.png


程序的输出:

image.png


提醒大家注意的是,在比较日期大小的时候一定要从字符型(character)转化成日期型(Date)。

今天的R爬虫就介绍到这里,大家学完了R爬虫,可别忘记学英语哦。如果不付诸行动,再好的学习资料也无济于事!



往期精彩内容整理合集 

2017年R语言发展报告(国内)

R语言中文社区历史文章整理(作者篇)

R语言中文社区历史文章整理(类型篇)

公众号后台回复关键字即可学习

回复 R                  R语言快速入门及数据挖掘 
回复 Kaggle案例  Kaggle十大案例精讲(连载中)
回复 文本挖掘      手把手教你做文本挖掘
回复 可视化          R语言可视化在商务场景中的应用 
回复 大数据         大数据系列免费视频教程 
回复 量化投资      张丹教你如何用R语言量化投资 
回复 用户画像      京东大数据,揭秘用户画像
回复 数据挖掘     常用数据挖掘算法原理解释与应用
回复 机器学习     人工智能系列之机器学习与实践
回复 爬虫            R语言爬虫实战案例分享

推荐 1
本文由 R语言中文社区 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

1 个评论

爬虫

要回复文章请先登录注册