作者:徐浩 来源:人工智能学习圈

3.2.1 目标

目标地址:https://book.douban.com/top250?start=0

任务:爬取豆瓣图书TOP250,及其‘书名’、‘出版信息’、‘评分’、‘评价人数’四个数据

3.2.2 分析URL

首先先打开目标地址对url进行分析

观察第一页豆瓣图书如下:

preview

第二页豆瓣图书如下:

最后一页豆瓣图书如下:

我们可以发现url的结构是如何变化的,每一次的翻页所对应改变的是start参数的值,那么我们就可以构造urls:

3.2.3 请求网页

我们看到其中有response.encoding = 'utf-8',这个可以根据标签中的信息分析得到,还可以改为response.encoding=response.apparent_encoding

这个的意思是说,把响应的结果的 html 源码的编码格式设置成 utf-8,不这样做的话,我们提取到的数据中如果有中文的,那显示就会是乱码

3.2.4 分析数据

鼠标放在目标元素位置,右键-检查,我们看到第一本书的我们需要的详细信息都在

里面,

所以我们需要提取这一页的所有的标签:

infos = html.xpath('//tr[@class="item"]')

返回的是一个列表,再一次循环列表的每一个标签,从中提取出对应的数据,其实不用提取数据的 xpath 路径不需要去看路径张啥样在去手敲进去,可以复制得,但需要修改

我们以提取书名为例,在书名那里右键-检查,如下图,复制出 xpath 路径

粘贴代码为://*[@id="content"]/div/div[1]/div/table[1]/tbody/tr/td[2]/div[1]/a

我们观察我们已经提取的 tr 标签 '//tr[@class="item"]' ,在看上面找到 tr ,以它为断点(包含它),前面的删掉改成如下:

name = info.xpath('./td[2]/div[1]/a/text()')[0]

因为我们已经提取了一大包含我们需要的数据的大标签 tr,是从中再提取数据,所以前面多余的删掉,包含 tr 也删掉,因为是从它的里面提取

另外数据同理,所以可写代码:

提取后,我们需要用 replace 把多余字符去掉,最后打印

到这里接就完成了提取数据

3.2.5 小结

完整代码如下:

运行结果如下:

欢迎大家加入人工智能圈参与交流

原文链接: https://zhuanlan.zhihu.com/p/140246883

java爬虫爬豆瓣图书_网络爬虫——爬取豆瓣图书相关推荐

  1. python豆瓣影评_使用Python抓取豆瓣影评数据的方法

    抓取豆瓣影评评分 正常的抓取 分析请求的url https://movie.douban.com/subject/26322642/comments?start=20&limit=20& ...

  2. 【python爬虫 系列】1.理解网络爬虫

    第一节:理解网络爬虫 1.1网络爬虫的定义 网络爬虫(又被称为网页蜘蛛,网络机器人)就是模拟浏览器发送网络请求,接收请求响应,一种按照一定的规则,自动地抓取互联网信息的程序.另外一些不常使用的名字还有 ...

  3. 网络爬虫python实例视频-Python网络爬虫实例教程 视频讲解版

    章网络爬虫概述1 1.1认识网络爬虫1 1.1.1网络爬虫的含义1 1.1.2网络爬虫的主要类型2 1.1.3简单网络爬虫的架构3 1.1.4网络爬虫的应用场景3 1.2Python网络爬虫技术概况4 ...

  4. 【spider】爬虫学习路线-精通Scrapy网络爬虫

    博客已经搬家到"捕获完成": https://www.v2python.com 随着大数据时代的到来,人们对数据资源的需求越来越多,而爬虫是一种很好的自动采集数据的手段. 那么,如 ...

  5. 什么是网络爬虫,我们为什么要学习网络爬虫?

    ​ 一.什么是网络爬虫 网络爬虫又称网络蜘蛛.网络蚂蚁.网络机器人等,可以自动化浏览网络中的信息,当然浏览信息的时候需要按照我们制定的规则进行,这些规则我们称之为网络爬虫算法.使用Python可以很方 ...

  6. Python爬虫总结——Scrapy+Gerapy部署网络爬虫

    Python爬虫总结--从基础爬虫到Scrapy+Gerapy部署网络爬虫 前言 一.常用pip模块介绍 1.NumPy库 2.Pandas库 3.Requests库 4.BeautifulSoup库 ...

  7. python网络爬虫技术-基于Python的网络爬虫技术综述

    汪洋 姜新通 [摘 要]人类社会已经进入大数据时代,这正在改变着我们的工作和生活.随着互联网的兴起和发展,同时也产生了各种对人类有价值的数据.快速搜索数据和充分利用数据信息已成为一个巨大挑战.这样的需 ...

  8. 【python爬虫学习篇】初识网络爬虫以及了解Web前端

    目录 1,初识爬虫 1.1,网络爬虫概述 1.2,爬虫的分类 1.3,网络爬虫的基本原理 1.4,搭建开发环境 2,了解web前端 2.1,HTTP基本原理 2.1.1HTTP协议 2.1.2,Web ...

  9. 爬虫基础(2)网络爬虫的实现原理与技术

    文章目录 一. 爬虫技术实现原理 二. 发送请求 1. 请求行 2. 请求头 3. 空行 4. 请求体 三. 获取响应内容 1. 响应行 2. 响应头 3. 空行 4. 响应体 四. 解析网页内容 1 ...

  10. python爬取地图地址_网络爬虫-python爬取高德地图地点

    python爬取你想要的数据,近期由于业务需求,用python爬取了高德地图一些地点的数据,爬出来数据大致情况如下: image 下面是基本流程: 2.安装网络爬取第三方库,主要是下面三个(pip i ...

最新文章

  1. Ext JS 4 笔记1
  2. 一位年轻董事长给大学生的18条好建议
  3. 皮一皮:选第一个选项的人是咋想的?
  4. iOS 单例模式全面解析
  5. windows和linux多进程效率,Windows程序效率 (转)
  6. 四川三河职业学院计算机寝室,2020四川三河职业学院宿舍条件如何-有空调否?(宿舍图片)...
  7. ROS queue_size和buff_size设置
  8. MPI 自定义通用结构和传输
  9. autolisp获取目录服务器信息失败,大神们,帮忙看看这个代码哪儿有问题?老是出现“参数类型错误:...
  10. 7 招教你轻松搭建以图搜图系统!
  11. moodle 中文文件名无法打开和下载问题
  12. 积极响应号召,ModStart支持用户主动注销账号功能
  13. (转载)3. 飞控与惯性导航系统
  14. 陆游书法真迹,堪称书法大家!
  15. 计算机本地硬盘满了,本地磁盘C盘满了怎么清理?
  16. stm32中的或运算 ||
  17. 利用Hackrf One进行GPS定位欺骗制作超级跑马机
  18. 【强化学习】PPO算法求解倒立摆问题 + Pytorch代码实战
  19. 图像转文本、PDF 转文字(包括html、xml)、关键句提取 软件开发手记
  20. 《JDK学习》使用JDK的keytool生成p12证书

热门文章

  1. 软件工程毕业设计课题(2)基于python的毕业设计python旅游网站系统毕设作品
  2. [python]微信公众号文章爬取
  3. python电影推荐系统_电影推荐系统---协同过滤算法(SVD,NMF)
  4. 新手学Unity3d的一些网站及相应学习路线
  5. Spring RestTemplate 实践
  6. 更好用计算机怎么打,电脑输入法哪个好用(最受欢迎的7大输入法对比详情)...
  7. ubuntu 终端查看图片(eog)
  8. 项目技术管理经验总结
  9. 微信公众平台开发问答
  10. vue大屏项目开发框架dataV