一、注意事项
1、文件名尽量使用英文,避免出现编码问题
2、含中文的文件写入,注意标注编码,如:

with open(r"C:\Users\10335\Desktop\response.txt", 'w', encoding = "utf-8") as f:f.write(html)f.close()

3、若长时间得不到输出,考虑正则表达式的构造是否捕捉效率不高

二、代码实现

import requests
import re
import timeclass Book():# 书籍类def __init__(self, title="NULL", href="NULL", author="NULL", year="NULL", publisher="NULL", abstract="NULL"):self.title = titleself.href = hrefself.author = authorself.year = yearself.publisher = publisherself.abstract = abstractdef get_info(self):# 格式化输出至文件content = "Title:" + self.title + "   Author:" + self.author + "\nPublisher:" + self.publisher + " Year:" + self.year + "\nAbstract:\n" + self.abstract + "\nLink:" + self.href + "\n_________________________\n"with open(r"C:\Users\10335\Desktop\doubanbook.txt", 'a', encoding = "utf-8") as f:f.write(content)f.close()header = {"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.106 Safari/537.36"}
html = requests.get("https://book.douban.com/", headers=header).text
with open(r"C:\Users\10335\Desktop\response.txt", 'w', encoding = "utf-8") as f:#将响应保存为文件,以分析匹配效果f.write(html)f.close()
books = []
pattern = re.compile('<div class="title">.*?href="(.*?)"\s*title="(.*?)".*?<div class="author">\s*(.*?)\s*?</div>\s.*?"year">\s*(.*?)\s.*?publisher">\s*(.*?)\s.*?abstract">\s*(.*?)\s</p>',re.S)
start = time.perf_counter()
results = pattern.findall(html)
end = time.perf_counter()
for result in results:books.append(Book(href=result[0], title=result[1], author=result[2], year=result[3],publisher=result[4], abstract=result[5]))
for book in books:book.get_info()
print("Running time:", (end - start), "seconds")# 输出运行时间

三、部分输出截取:

Title:不管狗和茶炊怎么闹腾   Author:王这么
Publisher:人民文学出版社 Year:2020-1
Abstract:
⭐一本点亮平庸日常的生活之书
⭐讲述平淡中的光怪陆离和嘈杂中的诗意
⭐不管狗和茶炊怎么闹腾,生活就在那里
⭐努力地将日子过下去,就是我们的坎坷征途与星辰大海
——————————————————————————————————————
契诃夫说:“不管狗和茶炊怎么闹腾,夏天过后还会有冬天,青春过后还会有衰老,幸福后面跟着不幸,或者是相反。不管这多么...Link:https://book.douban.com/subject/34954089/?icn=index-latestbook-subject
_________________________
Title:女生徒   Author:[日]太宰治
Publisher:天津人民出版社 Year:2020-1
Abstract:
太宰治&#34;女性独白体“短篇小说集
野间文艺翻译奖得主 陆求实全新译本
——————————————————————————
本书选取太宰治作品中以女性第一人称视角叙述的10 篇作品,以其中的名篇《女生徒》为书名,并对照各个故事中女性的人生轨迹——少年、青年、壮年、老年追忆少年时光,对各篇顺序做出梳理。
——————————————————————————
...Link:https://book.douban.com/subject/34924767/?icn=index-latestbook-subject
_________________________
Title:东京百景   Author:[日] 又吉直树
Publisher:上海译文出版社 Year:2020-3
Abstract:
史上最畅销的芥川奖获奖者又吉直树的随笔集——写给东京的一封情书,但永远得不到它的回眸
豆瓣9.3分日剧《火花》的创作原点,又吉直树的另类个人传记
以东京为背景,直指正在大城市打拼的现代年轻人的生活和内心
在幻想与现实的交错之间,发现东京的残酷与温柔
“我期望,这个世界不要欺骗年轻人。别把他们当食物吞掉。”
内容简介:
《东京百景》由100篇小短文串联而成...Link:https://book.douban.com/subject/34900487/?icn=index-latestbook-subject
_________________________
Title:好学校   Author:[美] 理查德·耶茨
Publisher:上海译文出版社 Year:2020-2
Abstract:
美国寄宿男校的一段伤心往事 耶茨最温柔的一部小说
-
书名中的“好学校”是一所虚构的康涅狄格州预备中学。故事发生在上个世纪四十年代初期,“好学校”中的男孩毕业后就要立刻参军作战,老师们对于自身职业和所在学校的情感五味杂陈。尽管这是一所学校,可正如书中一名老师所说,这里“蕴藏了巨大的潜在能量”,学生如此,老师亦如此。从某种程度上,本书延续了《革命...Link:https://book.douban.com/subject/34888772/?icn=index-latestbook-subject
_________________________
Title:周作人集外文   Author:周作人 著&nbsp;/&nbsp;陈子善, 赵国忠 编
Publisher:上海人民出版社 Year:2020-1
Abstract:
☆全新《周作人集外文》,搜集更为完备、考订更为准确
☆收入近年来新发现的周作人佚文,增补文章百余篇
☆填补研究资料之缺漏,展现更为丰富立体的周作人形象
·
新版《周作人集外文》共两卷,本书为上卷,收入1904年至1945年的集外文,包括散文、旧诗、新诗,以及为自己或他人的文章、译文所写的题记、附记、按语等未曾收入自编文集的作品。
相较于之前版本,新版《周...Link:https://book.douban.com/subject/30212806/?icn=index-latestbook-subject
_________________________

Python网络爬虫实战练习:爬取豆瓣图书信息相关推荐

  1. [day4]python网络爬虫实战:爬取美女写真图片(Scrapy版)

    l> 我的新书<Android App开发入门与实战>已于2020年8月由人民邮电出版社出版,欢迎购买.点击进入详情 文章目录 1.开发环境 2.第三方库 3.Scrapy简介 4. ...

  2. [day1]python网络爬虫实战:爬取美女写真图片

    l> 我的新书<Android App开发入门与实战>已于2020年8月由人民邮电出版社出版,欢迎购买.点击进入详情 文章目录 1.开发环境 2.第三方库 3.实现 1.分析url格 ...

  3. [day2]python网络爬虫实战:爬取美女写真图片(增强版)

    l> 我的新书<Android App开发入门与实战>已于2020年8月由人民邮电出版社出版,欢迎购买.点击进入详情 文章目录 1.开发环境 2.第三方库 3.实现 1.分析url格 ...

  4. Python 网络爬虫实战:爬取知乎回答中的全部图片

    平时逛知乎的时候,经常能看到很多很棒的图片,精美的壁纸,搞笑的表情包,有趣的截图等等,总有想全部保存下来的冲动. 于是在一个小老弟的拜托之下,我把之前的知乎爬虫改造了一下,改装成了一个可以下载知乎回答 ...

  5. Python 网络爬虫实战:爬取《去哪儿》网数千篇旅游攻略数据,再也不愁旅游去哪儿玩了

    好久不见! 今天我们来爬取 去哪儿网站 的 旅游攻略 数据. 0x00  找一个合理的作案动机 作为一名立志成为技术宅的普通肥宅,每次一到周末就会面临一个人生难题:这周末怎么过? 本来是没有这些问题的 ...

  6. Python网络爬虫实战:爬取携程网酒店评价信息

    这个爬虫是在一个小老弟的委托之下写的. 他需要爬取携程网上的酒店的评价数据,来做一些分词和统计方面的分析,然后来找我帮忙. 爬这个网站的时候也遇到了一些有意思的小麻烦,正好整理一下拿出来跟大家分享一下 ...

  7. Python 网络爬虫实战:爬取 B站《全职高手》20万条评论数据

    本周我们的目标是:B站(哔哩哔哩弹幕网 https://www.bilibili.com )视频评论数据. 我们都知道,B站有很多号称"镇站之宝"的视频,拥有着数量极其恐怖的评论和 ...

  8. Python网络爬虫实战之爬取小说

    一.目标 1- 爬取一个章节的小说 2- 爬取整一本小说 二.爬取单章节的小说 2.1 数据准备 这里在网上随意搜了一个网站,其链接如下: https://www.biqukan.com/1_1408 ...

  9. Python爬虫实战(1) | 爬取豆瓣网排名前250的电影(下)

    在Python爬虫实战(1) | 爬取豆瓣网排名前250的电影(上)中,我们最后爬出来的结果不是很完美,这对于"精益求精.追求完美的"程序猿来说怎么能够甘心 所以,今天,用pyth ...

  10. Python爬虫入门(爬取豆瓣电影信息小结)

    Python爬虫入门(爬取豆瓣电影信息小结) 1.爬虫概念 网络爬虫,是一种按照一定规则,自动抓取互联网信息的程序或脚本.爬虫的本质是模拟浏览器打开网页,获取网页中我们想要的那部分数据. 2.基本流程 ...

最新文章

  1. 关于Enterprise Library 两个网占.
  2. 浅谈三层架构中的实体类(C#)
  3. 008_表内容的插入删除修改
  4. 高中计算机应用基础试讲,试讲计算机应用基础.ppt
  5. ssh客户端_一款基于TAS框架的SSH客户端蠕虫
  6. 计算机入门 姚班,清华“姚班”:学霸中的尖子生,大佬毕业后都去哪了?
  7. 字符串使用与内部实现原理
  8. 随机森林的原理及Python代码实现
  9. 201709-1-打酱油
  10. 028_adblock
  11. SBI集团“逆市”入股玖富,背后意味着什么?|一点财经
  12. 基于单片机的电子万年历的设计
  13. 切比雪夫不等式例题讲解_数学广角:切比雪夫最佳逼近直线
  14. python 小数点位数_python小数位数
  15. 剑客vs刀客 Java vs .NET
  16. 售后单导出(抖音、快手)
  17. Python 调用谷歌翻译(2021年3月测试可用)
  18. 把表的竖向列变为横向一字段值(或 竖向变横向)
  19. Deepin wine QQ 安装
  20. 漂亮的系统后台UI 欣赏

热门文章

  1. 高等数学上册前三章思维导图(自制)
  2. 关于flickr的数据集笔记
  3. MagicBox Statistics
  4. LYNC客户端不显示通讯组里的用户的解决办法。
  5. python人狗大战游戏_day23 python学习 类 人狗大战
  6. Cocos creator(JavaScript)- 简单实现连线小游戏
  7. git-回滚到某次提交reset current branch to here
  8. 程序员推荐的最简单有效的科学健脑…
  9. 独立IP与共享IP有什么区别
  10. 可视化拖拽组件库一些技术要点原理分析(二)