新手爬虫,使用R中最简单的读取网页,然后获取所需内容所在行进行解析。下面介绍爬取豆瓣图书Top250的案例。
1.首先,我们知道网页规律为:“http://book.douban.com/top250?start=”+index,index为25的倍数,从0开始,表示该页面是从index开始的25条图书数据。
获取网页信息代码如下:

web <- seq()
for(i in 1:9){url1<-paste('http://book.douban.com/top250?start=',25*i,'&filter=&type=',sep="")web1 <- readLines(url1,encoding="UTF-8")web<-c(web,web1)
}

2.在网页上审查元素,获取我们需要的数据的特征,然后选择所在行进行解析
所有数据长度均为250条

#书名
name <- web[grep(' <div class="pl2">',web)+6]
#作者、出版商等信息
other <- web[grep('<p class="pl">',web)]
#评分
score<-web[grep('<div class="star',web)+2]#将数据解析到book对象中
book.names <- 0 #书名
book.authors <- 0;#作者
book.Publishing_House<- 0;#出版社
book.Publishing_date <- 0;#出版时间
book.price <- 0;#定价
book.scores <- 0#评分
#解析数据
others <- 0
for(i in 1:length(name)){book.names[i]<-substring(name[i],17)#去掉书名前的空白others[i] <- substring(other[i],28,nchar(other[i])-4)temp<-strsplit(others[i],split = "/")[[1]]book.authors[i] = temp[1];book.Publishing_House[i] = temp[length(temp)-2]; book.Publishing_date[i] = temp[length(temp)-1];book.price[i] = temp[length(temp)]; book.scores [i] <- substring(score[i],45,nchar(score[i])-7)
}
book.names <- sub('>','',book.names)
book.authors <- sub('>','',book.authors)
book.Publishing_House <- sub('>','',book.Publishing_House)
book.Publishing_date <- sub('>','',book.Publishing_date)
book.scores <- sub('>','',book.scores)

3.显示抓取的前几条图书信息,然后将所有信息保存到本地

# 合成为数据框
temp1 <- data.frame('书名'=book.names,'作者'=book.authors,'出版社'= book.Publishing_House ,'出版日期' = book.Publishing_date,'评分' = book.scores)
#打印前几条
head(temp1)
#保存到CSV文件中
write.csv(temp1,"dbbookTop250.csv")

实验结果:

R语言爬取豆瓣图书Top250相关推荐

  1. 爬取豆瓣图书top250

    爬取豆瓣图书top250 豆瓣网址:https://book.douban.com/top250 豆瓣图书第一页:https://book.douban.com/top250?start=0 豆瓣图书 ...

  2. requests 获取div_爬虫系列第五篇 使用requests与BeautifulSoup爬取豆瓣图书Top250

    上一篇我们学习了BeautifulSoup的基本用法,本节我们使用它来爬取豆瓣图书Top250. 一.网页分析 我们爬取的网页的url是https://book.douban.com/top250?i ...

  3. Python3爬取豆瓣图书Top250并存入csv文件中

    本文抓取豆瓣图书Top250中的相关资讯,可以练习对于网页结构的分析及提取. 下面先导入相关的包,并伪装成浏览器访问: import requests from lxml import etree i ...

  4. Python3爬取豆瓣图书Top250并写入txt文件当中

    首先简单介绍一下过程 1.解析url 2.获得html文件 3.解析数据 4.写入txt文本(按页写入) 5.上传代码 转载前可以备注一下ytouch的名字 '''爬取豆瓣图书前250名''' #au ...

  5. 【go语言爬虫】go语言爬取豆瓣电影top250

    一.需求分析 用go语言抓取 豆瓣电影top250 抓取url: https://movie.douban.com/top250 抓取字段:电影名称.评分.评价人数 二.运行: 正在抓取第0页-- 肖 ...

  6. xpath解析爬虫爬取豆瓣图书Top250的数据

    这是在学习阶段写的爬虫,爬取的是豆瓣图书Top250榜的名称,作者,评分等数据 第一次写文章,如果有什么问题,欢迎各位大佬进行指正,谢谢来踩. 1.首先需要明确自己想要爬取的内容,并在网页中查看数据是 ...

  7. 利用requsets、bs4、re库爬取豆瓣图书top250【Python】

    因为最近在练习定向网络爬虫技术,爬了豆瓣电影之后,顺便爬一下豆瓣图书,具体请看介绍. 介绍 1.用到的库有requests,bs4中的BeautifulSoup,以及正则表达式re库.requests ...

  8. Scrapy爬取豆瓣图书Top250数据,在PowerBI中可视化分析

    文章目录 项目说明 Scrapy框架 网页分析 爬虫代码 items spiders pipelines main 爬取结果 PowerBI分析 分析结果 项目说明 近期在学习Python爬虫,看了很 ...

  9. 爬取豆瓣图书Top250书籍信息

    小白一个,接触Python一个多月了,自己感觉最有趣的莫过于利用Python进行网络爬虫,原来都是看着别人的博客把代码抄一遍,今天时间稍微多一些,自己写了一个小爬虫,从分析网页源代码开始,一步步对代码 ...

最新文章

  1. java蓝桥杯的题_Java蓝桥杯试题集——算法训练ALGO-116——最大的算式
  2. ​一网打尽 Linux 必备技能,就靠它了!
  3. javaTemplates-学习笔记四
  4. ControllerContext分析
  5. python学习中包的生成和调用(idle和pycharm)
  6. mysql函数commit_phpmysqli_commit()函数和mysqli_autocommit()函数比较
  7. 从零开始学MySQL(四)
  8. 计算机可移动磁盘无法显示图片,移动硬盘不显示盘符原因及解决方法步骤介绍【图文详解】...
  9. via浏览器下载路径_via浏览器
  10. Error: Can't resolve 'fs' in (webpack 2配置CSS loadeers)
  11. 【AES】基于FPGA的128位AES加解密系统设计实现
  12. ABBYY FineReader 15如何比较文档?
  13. Python面向对象编程随笔
  14. python运行时关闭硬件信息-Python实现的读取电脑硬件信息功能示例
  15. 7个适合设计小白学的平面设计软件
  16. 一种相对高效的按键消抖方法
  17. TCP/IP-单播是如何实现的
  18. 物联网设备数据流转之告警信息推送:TDengine-alert
  19. 阿拉丁HASP SRM加密锁(加密狗)
  20. 计算机视觉岗实习面经

热门文章

  1. 不喜欢现在的工作,怎么办?
  2. 树莓派4b入门以及各种系统烧录问题分享
  3. 青云QingCloud发布重量级产品 云计算赋能企业核心业务
  4. 都 2021 年了还不会连 ES6/ES2015 更新了什么都不知道吧
  5. 变量的作用功能、作用域和作用形态
  6. 冰封王座打疯狂的电脑
  7. t420i升级固态硬盘提升_小体积、大性能、台式机笔记本升级可选,酷兽M.2 SSD固态硬盘测评...
  8. 《黑客攻防技术宝典:Web实战篇》习题答案(三)
  9. eclipse指定运行环境jdk的路径
  10. java脏字过滤_分享JavaWeb中filter过滤器的案例妙用 - 脏话过滤/编码过滤/代码过滤...