爬虫练手小项目:豆瓣高分图书TOP100
爬虫练手小项目:豆瓣高分图书TOP100
import requests
import re
from requests.exceptions import RequestException
import json
import timedef get_one_page(url):headers ={'User-Agent':'Mozilla/5.0 (Macintosh;Intel Mac OS X 10_13_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.162 Safari/537.36'}response = requests.get(url,headers=headers)if response.status_code == 200:return response.textreturn Nonedef parse_one_page(html,offset):pattern = re.compile('<div.*?post.*?img.*?src="(.*?)".*?</div>.*?title.*?_blank">(.*?)</a>.*?rating_nums">(.*?)</span>',re.S)items = re.findall(pattern,html)index = offsetfor item in items:index = index + 1yield {'index':index,'image':item[0],'title':item[1].strip(),'score':item[2]}def write_to_file(content):with open("doubandushu.txt",'a',encoding='utf-8') as f:#print(type(json.dumps(content)))f.write(json.dumps(content,ensure_ascii=False)+'\n')def main(offset):url = "https://www.douban.com/doulist/45004834/?"+'start='+str(offset)+'&sort=time&sub_type='html = get_one_page(url)for item in parse_one_page(html,offset):print(item)write_to_file(item)if __name__=='__main__':for i in range(0,4):main(offset = i*25)time.sleep(1)
* 注:1.本项目模仿崔庆才著的《Python3网络爬虫开发实践》3.4节抓取猫眼电影排行;2.博主能力有限,无法写出合适的正则表达式抓取书籍作者信息,在此请教其他网友;
爬虫练手小项目:豆瓣高分图书TOP100相关推荐
- Golang练手小项目系列
Golang练手小项目系列 本系列整理了10个工作量和难度适中的Golang小项目,适合已经掌握Go语法的工程师进一步熟练语法和常用库的用法. golang练手小项目系列(1)-位向量 golang练 ...
- ssm练手小项目_20 个 JavaScript+Html+CSS 练手的小项目
前言: 最近在 GitHub 上发现了一个 vanillawebprojects[1] 开源仓库,里面收集了 20 个 JavaScript+Html+CSS的练手项目,没有使用任何框架,可以让你从基 ...
- 台式小风扇(HTML+CSS+JS练手小项目)
台式小风扇(HTML+CSS+JS练手小项目) 功能介绍 外观展示 HTML代码 CSS代码 JS代码 总结 功能介绍 前段时间看到这样的风扇特效,感觉还挺好玩,就自己也写一个练练手. 风扇有四个档位 ...
- 数据结构练手小项目(AVL树、哈希表、循环链表、MySQL数据库)
文章目录 前言 正文(无删减) 我的想法(删减修改版) 数据导入与数据存储 功能实现 数据结构 用户结构 SIM卡结构 AVL树数据结构 哈希表结构 数据表 用户表 SIM卡表 时间安排 前言 本月主 ...
- html+css+js之20个练手小项目(一)
html+css+js之20个练手小项目(一)--Hangman 前言 一.HTML 二.CSS 三.JS 前言 前端新手练习,记录不迷失. 主要练习html和CSS布局以及JS. 来源github, ...
- 练手小项目,爬取3DM图片
博客原文:https://weweweha.com 1. 概述 爬取3DM指定网页的游戏壁纸,并且通过多线程来加速爬取图片的速度. 2.使用库 request库用来1解析指定网页,re库用来搜 ...
- c语言模拟器怎么打程序,C语言初学者练手小项目——万花模拟器
原标题:C语言初学者练手小项目--万花模拟器 还记得小时候玩的万花尺么?好好玩,各种不同的点距能画出各种各样形状图形. C语言程序万花尺模拟 函数功能:每隔5秒随机生成万花图形 并自动保存作图参数以及 ...
- 练手小项目(2)-生活小助手--星座运势查询
上一篇内容 练手小项目(2)-生活小助手 今天星期一.趁着中午的歇息时间把 第二个写出来 星座运势,近期看看极客学院 用聚合数据做了天气预报的视频教程,不好评价他.看他在后面的代码变更那么大,我就知道 ...
- C# Socket网络编程(附赠练手小项目)
在公司花了两天的时间来研究Socket编程,感觉也还是学到了一点点皮毛,不过也还是有一点点的小成就. 配合Winform窗体界面,实现了简单的窗体间互相通信的小项目(可以互相发消息,服务器可以给客户端 ...
最新文章
- The 4+1 view model
- java 唯一索引冲突_JPA merge联合唯一索引无效问题解决方案
- 不搞虚的!快速把你拉入Docker 的门里
- 计算机科学之美,计算机科学的美学探讨
- centos7 pe系统安装_U盘PE启动安装Win7系统教程(微PE版)
- 石、鋏、布~ 最疯狂的打斗场面,莫要错过,iphone手机游戏
- android投影到创维电视,创维Miracast,手机怎么投屏到创维电视,
- 网友发给我一个钓鱼网站,我用 Python 渗透了该网站所有信息
- 橙光游戏软件 怎么整体测试,橙光游戏怎么让编辑来审核?
- 【xubuntu】 在xubuntu系统上开启自动登陆,并自动启动一个应用程序。
- 一起捉妖服务器还要维护多久,一起来捉妖:在线6小时被劝退?只需网络断开,跳过等待15分钟...
- 编写C语言跨平台函数(以清屏和休眠函数为例)
- oppo三年Android更新,OPPO Find X3系列将提供3年系统更新支持
- e1000e_probe 其实是e1000_probe
- 微信小程序如何请求数据
- Ubuntu/Windows双系统安装巨详细——全面解决各种问题(疑难杂症),有手就行
- word快捷键粘贴不能用
- 74160ENT引脚设计法+同步置数法接成24进制加法计数电路
- 在LaTeX中配置西夏文字体与环境
- python安装好了怎么弄到桌面上_小白如何安装Python?分分钟搞定!
热门文章
- oracle 查找所有序列,Oracle查询所有序列
- jquery easyui 全部图标
- NCNN+Int8+yolov5部署和量化
- java 根据word文档模板导出word
- 2020开年,C语言重回巅峰王座!
- 中国农业生物多样性危机-农业大健康·蒋高明:谋定生态安全
- python经典教程_零基础 Python爬虫经典实战教程
- “”中国制造“”专用高速磁盘阵列存储服务器
- 提示BeanPostProcessorChecker:is not eligible for getting processed by all BeanPostProcessors的原因
- java l老毕_她被毕福剑一手捧红,还给她牵线煤老板,老毕落难时她的做法超赞...