R语言爬取豆瓣电影前排名前240数据

1、首先载入需要用到的包

library(xml2)
library(rvest)
library(stringr)
library(dplyr)

2、我们要摘取的网页为豆瓣电影TOP25的数据,网页为:https://movie.douban.com/top250?format=text
载入网页信息:

webpage<-read_html(str_c('https://movie.douban.com/top250?format=text'),encoding="UTF-8")  #read_html()用于保存网页,str_c()连接字符页
webpage

输出结果:

<html lang="zh-cmn-Hans" class="">
[1] <head>\n<meta http-equiv="Content-Type" content="text/html; charset=utf-8">\n<meta name="renderer"  ...
[2] <body>\n  \n    <script type="text/javascript">var _body_start = new Date();</script><link href="// ...

用rvest包中的read_html()函数提取排名,我们可以用与R语言中的rvest包结合使用的工具:SelectorGadget。
SelectorGadget是一款开源工具,可以与谷歌浏览器结合使用,能够为复杂网站的元素生成CSS选择器,这款神器有助于我们快速找到html的节点信息

rank_html_title<-html_nodes(webpage,"em")

输出结果

[1] <em class="">1</em>
 [2] <em class="">2</em>
 [3] <em class="">3</em>
 [4] <em class="">4</em>
 [5] <em class="">5</em>
 [6] <em class="">6</em>
 [7] <em class="">7</em>
 [8] <em class="">8</em>
 [9] <em class="">9</em>
[10] <em class="">10</em>
[11] <em class="">11</em>
[12] <em class="">12</em>

用stringr包中的html_text()提取上面的数字,再转换为数值型

rank_data<-html_text(rank_html_title)
head(rank_html_title)
rank_data<-as.numeric(rank_data)

输出结果

[1]  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

提取电影名字也是按同样的方式

  • Markdown和扩展Markdown简洁的语法
  • 代码块高亮
  • 图片链接和图片上传
  • LaTex数学公式
  • UML序列图和流程图
  • 离线写博客
  • 导入导出Markdown文件
  • 丰富的快捷键

快捷键

  • 加粗 Ctrl + B
  • 斜体 Ctrl + I
  • 引用 Ctrl + Q
  • 插入链接 Ctrl + L
  • 插入代码 Ctrl + K<
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值