小白一个,接触Python一个多月了,自己感觉最有趣的莫过于利用Python进行网络爬虫,原来都是看着别人的博客把代码抄一遍,今天时间稍微多一些,自己写了一个小爬虫,从分析网页源代码开始,一步步对代码进行设计与完善,捣腾了一中午,终于算是成功了,心情还是蛮激动。下面把代码跟大家分享一下。

豆瓣图书Top250网址:https://book.douban.com/top250

1、首先打开Google浏览器开发者模式(F12或者右键点击检查)

2、浏览网页,发现250本图书一共分成了10页,利用开发者工具找到每一页的url

利用Beautifulsoup跟requests获取每一页的url

import requests
import re
from bs4 import BeautifulSoupcontent = requests.get('https://book.douban.com/top250').text
Soup = BeautifulSoup(content,'lxml')
all_url = Soup.find('div',class_='paginator').find_all('a')
list = []
for url in all_url:url = url['href']list.append(url)
use_url = ['https://book.douban.com/top250']
ext_url = list[0:-1]#舍弃最后一个url
use_url.extend(ext_url)#将两个列表合并

3、利用开发者工具查看网页格式

我只抓取了图书的链接、书名以及作者,通过开发者工具发现图书的信息都在table标签里面。

通过正则表达式将信息提取出来

import requests
import re
from bs4 import BeautifulSoupcontent = requests.get('https://book.douban.com/top250').text
Soup = BeautifulSoup(content,'lxml')
all_url = Soup.find('div',class_='paginator').find_all('a')
list = []
for url in all_url:url = url['href']list.append(url)
use_url = ['https://book.douban.com/top250']
ext_url = list[0:-1]#舍弃最后一个url
use_url.extend(ext_url)#将两个列表合并
for i in use_url:response = requests.get(i,'lxml')pattern = re.compile('<table.*?pl2.*?href="(.*?)".*?title="(.*?)".*?pl">(.*?)/.*?</table>',re.S)results = re.findall(pattern,content)for result in results:href,name,author = result#分别对href、name、author进行赋值print(href,name,author.strip())

4、运行程序

注:博主只是个小白,想通过博客记录一下自己学习Python的过程,代码可能有很多不完善的地方,希望能与大家多多交流学习。

爬取豆瓣图书Top250书籍信息相关推荐

  1. 利用正则表达式爬取豆瓣读书top250书籍信息 附有详细分析

    import csv from lxml import etree import requestsfp=open('C:\\Users\我的电脑\Desktop\doubanbook.csv','wt ...

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

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

  3. R语言爬取豆瓣图书Top250

    新手爬虫,使用R中最简单的读取网页,然后获取所需内容所在行进行解析.下面介绍爬取豆瓣图书Top250的案例. 1.首先,我们知道网页规律为:"http://book.douban.com/t ...

  4. 爬取豆瓣电影Top250影片信息

    爬取豆瓣电影Top250影片信息 查看影片的详细信息 爬取过程 需安装的包 确定爬取地址 发送请求头 解析数据 保存数据 完整代码 查看影片的详细信息 进入豆瓣电影Top250,选择某一影片,右击,选 ...

  5. 爬取豆瓣图书top250

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

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

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

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

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

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

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

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

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

最新文章

  1. Apache IoTDB v0.13 发布!
  2. c++构造函数以及类中变量初始化顺序
  3. Hibernate的批量查询
  4. centos7配置python3_Centos7安装并配置Python3环境
  5. AWR 报告深度解读:Redo Nowait指标的算法和诊断泄露二十多万名用户数据
  6. linux6.5修复引导,CentOS 6.5 修复grub引导
  7. 用Java实现古典问题兔子的计算
  8. 如何编写兼容各主流邮箱的HTML邮件
  9. Linux虚拟化技术KVM入门必看
  10. tcpdump进行IP抓包
  11. 计算机设备预计净残值,【电子设备折旧年限及残值率】
  12. 一文带你看透 Chrome 浏览器架构
  13. (13.1.2)PMBOK之二:五大过程组及其涉及的输入、输出、工具技术
  14. JavaEE项目开发
  15. 打开创意工坊显示寻找专用服务器,DOTA2 涤尘迎春更新: 游戏性优化
  16. 从仿真到实飞,Prometheus自主无人机开发全覆盖!快来参加阿木实验室线下集训吧!
  17. 一份APT报告里有什么?
  18. 系统架构专题(1):大型互联网系统架构演变
  19. 【WLAN】【基础知识】WIFI那些事儿之BandSteering
  20. vue项目实现文件下载进度条

热门文章

  1. 可转债两个关键指标解读以及转股注意事项
  2. 下载指定主题的邮箱附件
  3. Calendar类常用方法,获取每月最大天数
  4. 成都地区一汽大众汽车4s店营销策略研究
  5. 清除终端 Terminal 的代码 快捷键(清屏)
  6. 英集芯科技通过注册:9个月营收5.7亿 黄洪伟为实控人
  7. Android 语言列表
  8. 织梦实现链接提交给百度 主动推送的实例操作
  9. 【日常】怀念儿童时的多啦A梦
  10. 利用其他工具(非ADT)开发Android上的应用程序