一个抓取豆瓣图书的开源爬虫的详细步骤
简介
基于numpy和bs4的豆瓣图书爬虫,可以分类爬取豆瓣读书300多万本图书信息,包括标题、作者、定价、页数、出版信息等
github地址:https://github.com/lanbing510/DouBanSpider
项目作者:lanbing510
1 可以爬下豆瓣读书标签下的所有图书
2 按评分排名依次存储
3 存储到Excel中,可方便大家筛选搜罗,比如筛选评价人数>1000的高分书籍;可依据不同的主题存储到Excel不同的Sheet
4 采用User Agent伪装为浏览器进行爬取,并加入随机延时来更好的模仿浏览器行为,避免爬虫被封
步骤
1、安装pyenv后激活环境,并clone代码到本地环境,可参看Python中文社区知乎专栏文章:基于pyenv和virtualenv搭建python多版本虚拟环境
2、查看代码文档,vim打开doubanSpider.py,可以看出需要安装的模块有numpy、bs4等,用pip命令依次安装:pip install numpy bs4,标红色部分为处理编码问题。
3、向下我们可以看到为了针对反爬虫,需要伪装浏览器头部,以及设置抓取频率,主要抓取内容为图书标题、简介等
4、部署好环境,安装必需的模块后即可用python命令直接执行文件
python doubanSpider.py
5、查看抓取的内容
原文发布时间为:2016-10-18
本文来自云栖社区合作伙伴“Python中文社区”,了解相关信息可以关注“Python中文社区”微信公众号
一个抓取豆瓣图书的开源爬虫的详细步骤相关推荐
- 从抓取豆瓣电影聊高性能爬虫思路(纯干货)
从抓取豆瓣电影聊高性能爬虫思路 本篇文章将以抓取豆瓣电影信息为例来一步步介绍开发一个高性能爬虫的常见思路. 寻找数据地址 爬虫的第一步,首先我们要找到获取数据的地址.可以先到豆瓣电影 首页 去看看. ...
- 从抓取豆瓣电影聊高性能爬虫思路
本篇文章将以抓取豆瓣电影信息为例来一步步介绍开发一个高性能爬虫的常见思路. 寻找数据地址 爬虫的第一步,首先我们要找到获取数据的地址.可以先到豆瓣电影 首页 去看看. 顶部导航为提供了很多种类型的入口 ...
- Python3爬取豆瓣图书Top250并存入csv文件中
本文抓取豆瓣图书Top250中的相关资讯,可以练习对于网页结构的分析及提取. 下面先导入相关的包,并伪装成浏览器访问: import requests from lxml import etree i ...
- python简单爬虫(下):实战应用——抓取豆瓣同城、登陆图书馆查询图书归还
在掌握了urllib几个模块的相关用法后,接下来就是进入实战步骤了~ (一)抓取豆瓣网站同城活动 豆瓣北京同城活动 该链接指向豆瓣同城活动的列表,向该链接发起request: # encoding= ...
- requests 获取div_爬虫系列第五篇 使用requests与BeautifulSoup爬取豆瓣图书Top250
上一篇我们学习了BeautifulSoup的基本用法,本节我们使用它来爬取豆瓣图书Top250. 一.网页分析 我们爬取的网页的url是https://book.douban.com/top250?i ...
- Python实例:网络爬虫抓取豆瓣3万本书(1)
花了些时间看了Python一整本书,写了些小例子,因为是有经验的人自学,所以很多都是跳过的. 不过学习还是得在实践中去,学一门语言还得运用中去. 去下一些例子下来,去运行,调试时最好的了. <网 ...
- python爬取豆瓣读书_用python+selenium抓取豆瓣读书中最受关注图书并按照评分排序...
抓取豆瓣读书中的(http://book.douban.com/)最受关注图书,按照评分排序,并保存至txt文件中,需要抓取书籍的名称,作者,评分,体裁和一句话评论 方法一:#coding=utf-8 ...
- python 爬虫生成csv文件和图_csv文件操作和爬虫抓取豆瓣影评并生成词云图
import requests from bs4 import BeautifulSoup import csv # 自定义一个抓取每页影评的方法 def getCommentByPage(url): ...
- csv文件操作和爬虫抓取豆瓣影评并生成词云图
1. csv文件操作 csv文件windows默认是excel打开的,是一种表格式文件 import csv #导入csv的库 # 一次写入多行文本时,会多换一行,可以设置newline=" ...
最新文章
- angular2新手学习笔记(1)概述
- 尝鲜Ubuntu Server 12.04 LTS
- mysql的左连接应用
- 记录一个奇葩问题 宝塔 nginx: [warn] conflicting server
- Python读写CSV格式文件
- MS SQL入门基础:管理触发器
- perl字符串数组 中 中加入点号和加入逗号效果是不一样
- 时间操作(Java版)—获取给定时间与当前系统时间的差值(以毫秒为单位)
- 设计模式GOF23大纲
- python下载的库包放_python下载的库包存放路径
- 2020年江西省职业院校技能大赛“信息安全管理与评估”赛项样题(高职组)
- latex添加代码注释_在代码中添加注释:好的,坏的和丑陋的。
- 浏览器0x80004005 无法上网
- 计算机mac地址怎么修改密码,如何修改苹果电脑mac地址?
- iOS 上的插件化设计
- 程序员最爱用的在线代码编辑器合集,哪款是你的最爱?
- 2022款联想拯救者R7000P和联想小新Pro16 选哪个好
- 默认计算机网络密码是多少,tplogin.cn初始密码是多少 tplogin管理密码一般是多少...
- python数据分析-概率论与数理统计基础
- Runtime.availableProcessors()
热门文章
- android适配性报告,关于Android的多种屏幕适配
- linux替换指定行指定列的内容,linux – sed替换特定行号的特定列号值
- java 回收器_Java虚拟机-经典垃圾回收器
- go get如何删除_在Go使用Sqlite和Accsee
- mysql叶子结点存储的什么_B+树叶子结点到底存储了什么?
- 置为底层_头一次见浴室装修这样设计,浴缸两头砌上置物台,实用又方便
- python 数据分析模块_Python数据分析之Numpy模块
- c语言生成一个大素数,for语句计算输出10000以内最大素数怎么搞最简单??各位大神们...
- 英语学习笔记2019-11-15
- 【codevs2304】【BZOJ1875】HH去散步,第一次的矩阵加速DP