# coding=utf-8
import requests
import redef get_request(url):try:response=requests.get(url)if response.status_code == 200:return response.textexcept requests.RequestException:return None
#如果不使用re.S参数,则只在每一行内进行匹配,如果一行没有,就换下一行重新开始。
#而使用re.S参数以后,正则表达式会将这个字符串作为一个整体,在整体中进行匹配。
def parse_result(html):pattern=re.compile('<li>.*?list_num.*?(\d+).</div>.*?<img src="(.*?)".*?class="name".*?title="(.*?)">.*?class="star">.*?class="tuijian">(.*?)</span>.*?class="publisher_info">.*?target="_blank">(.*?)</a>.*?class="publisher_info"><span>(.*?)</span>&nbsp;.*?class="biaosheng">.*?<span>(.*?)</span></div>.*?<p><span\sclass="price_n">&yen;(.*?)</span>.*?</li>', re.S)#pattern=re.compile('<li>.*?list_num.*?(\d+).</div>.*?<img src="(.*?)".*?class="name".*?title="(.*?)">*?star.*?target="_blank">(.*?)条评论.*?class="tuijian">(.*?)</span>.*?publisher_info.*?title="(.*?)".*?',re.S)items=re.findall(pattern,html)for item in items:yield {'range': item[0],'iamge': item[1],'title': item[2],'recommend': item[3],'author': item[4],'realse_times': item[5],'times': item[6],'price': item[7]}page_num=1
url=r'http://bang.dangdang.com/books/fivestars/01.00.00.00.00.00-recent30-0-0-1-'+str(page_num)
html=get_request(url)
items=parse_result(html)for item in items:print(item)#考虑方法放到pandas进一步操作

1.re.compile()中用了re.S

:如果不使用re.S参数,则只在每一行内进行匹配,如果一行没有,就换下一行重新开始。
#而使用re.S参数以后,正则表达式会将这个字符串作为一个整体,在整体中进行匹配。

https://blog.csdn.net/weixin_42781180/article/details/81302806

2.正则表达式的简单使用

这里用的正则并不复杂,只是要对应好要选取的内容,简单来说  ()内是要选取的,(\d+)至少有一位数字,(.*?)不贪婪的匹配任意数量字符,观察结构用上可以区分的符号

3.yidle的生成器

https://www.runoob.com/w3cnote/python-yield-used-analysis.html

当读取的内容过多,一个数组放不下,使用生成器会更好

4.关于response.status_code == 200   和   response.text

get请求拿到url的返回

200是返回的表示正常的代码,类似不正常的有404等,response.text是返回的html网页

最后的结果:

{'range': '1', 'iamge': 'http://img3m0.ddimg.cn/33/33/25197810-1_l_3.jpg', 'title': '尤尔小屋的猫', 'recommend': '100%推荐', 'author': '莉莉・海沃德', 'realse_times': '2018-01-01', 'times': '56814次', 'price': '33.90'}
{'range': '2', 'iamge': 'http://img3m5.ddimg.cn/1/26/24157585-1_l_9.jpg', 'title': '做个侃爷:精于闲聊 施展魅力(与任何人滔滔不绝的技巧)', 'recommend': '99.8%推荐', 'author': '帕特里克・金', 'realse_times': '2016-08-01', 'times': '41555次', 'price': '23.90'}
{'range': '3', 'iamge': 'http://img3m3.ddimg.cn/94/21/25069963-1_l_16.jpg', 'title': '呐喊――大屠杀回忆录(二战犹太大屠杀幸存者自述――一部震撼人心的自传)', 'recommend': '100%推荐', 'author': '曼尼・斯坦伯格', 'realse_times': '2017-04-01', 'times': '37359次', 'price': '28.30'}
{'range': '4', 'iamge': 'http://img3m0.ddimg.cn/10/28/25345990-1_l_3.jpg', 'title': '间谍之死(拒绝好莱坞翻拍的年度作品,刺激程度超越《碟中谍》,更好看的悬疑推理小说,,更精彩的高科技犯罪!屏住呼吸,追击即将开始) 纤阅出品', 'recommend': '100%推荐', 'author': '丹・马里兰', 'realse_times': '2018-08-01', 'times': '53980次', 'price': '42.50'}
{'range': '5', 'iamge': 'http://img3m1.ddimg.cn/66/36/28470981-1_l_3.jpg', 'title': '谜案鉴赏', 'recommend': '100%推荐', 'author': '莉比・菲舍尔・赫尔曼', 'realse_times': '2019-06-30', 'times': '35702次', 'price': '37.10'}
{'range': '6', 'iamge': 'http://img3m8.ddimg.cn/8/26/25345988-1_l_1.jpg', 'title': '有话说出来!(彻底颠覆社会人脉的固有方式,社交电池帮你搞定社交。社交恐惧症患者必须拥有的一本实用社交指南,初入大学和职场的必备“攻略”,拿起这本书,你也是“魏璎珞”)纤阅出品', 'recommend': '100%推荐', 'author': '帕特里克・金', 'realse_times': '2018-08-01', 'times': '41812次', 'price': '9.90'}
{'range': '7', 'iamge': 'http://img3m3.ddimg.cn/98/24/24157583-1_l_14.jpg', 'title': '回归之路(普利策新闻奖得主讲述一个奇迹生还的真实故事。生命力战胜医学极限,意志力超越人类极限,用坚韧和爱续写人生!)', 'recommend': '100%推荐', 'author': '迈克尔・维特兹', 'realse_times': '2016-05-01', 'times': '6230次', 'price': '25.90'}
{'range': '8', 'iamge': 'http://img3m6.ddimg.cn/2/27/24157586-1_l_7.jpg', 'title': '谋杀鉴赏(《读者的选择》最佳小说奖、国际推理小说“安东尼”奖提名。)', 'recommend': '100%推荐', 'author': '莉比・菲舍尔・赫尔曼', 'realse_times': '2016-05-01', 'times': '37131次', 'price': '28.30'}
{'range': '9', 'iamge': 'http://img3m4.ddimg.cn/77/13/27911444-1_l_3.jpg', 'title': '高尔基成长三部曲(童年、在人间、我的大学)', 'recommend': '100%推荐', 'author': '高尔基', 'realse_times': '2019-08-01', 'times': '17185次', 'price': '37.80'}
{'range': '10', 'iamge': 'http://img3m5.ddimg.cn/41/3/28486895-1_l_2.jpg', 'title': '给孩子的财商启蒙书(樊登读书会推荐)', 'recommend': '100%推荐', 'author': '齐艺萌', 'realse_times': '2020-01-01', 'times': '16963次', 'price': '24.00'}
{'range': '11', 'iamge': 'http://img3m5.ddimg.cn/64/16/25110325-1_l_3.jpg', 'title': '守护故事的人(一部与《杀死一只知更鸟》相同深度和力量的作品)', 'recommend': '100%推荐', 'author': '丽萨・温格特', 'realse_times': '2017-08-01', 'times': '26993次', 'price': '36.00'}
{'range': '12', 'iamge': 'http://img3m0.ddimg.cn/18/6/28501920-1_l_2.jpg', 'title': '我的第一本哲学启蒙书', 'recommend': '100%推荐', 'author': '河野哲也', 'realse_times': '2020-02-01', 'times': '7396次', 'price': '33.90'}
{'range': '13', 'iamge': 'http://img3m1.ddimg.cn/86/2/25546541-1_l_9.jpg', 'title': '空间简史(教育部推荐读物,与《时间简史》《人类简史》《未来简史》并称“四大简史”)', 'recommend': '100%推荐', 'author': '托马斯・马卡卡罗', 'realse_times': '2019-01-01', 'times': '37055次', 'price': '33.90'}
{'range': '14', 'iamge': 'http://img3m1.ddimg.cn/96/22/24157581-1_l_15.jpg', 'title': '魔力四射:如何打动、亲近和影响他人(一本改变人生思维方式的魔力读物,助你掌握社交技巧与领导魅力)', 'recommend': '100%推荐', 'author': '帕特里克・金', 'realse_times': '2016-08-01', 'times': '49937次', 'price': '23.90'}
{'range': '15', 'iamge': 'http://img3m5.ddimg.cn/96/20/25277865-1_l_3.jpg', 'title': '上帝怀中的羔羊:美国普利策文学奖、法国费米娜文学奖获奖作品', 'recommend': '100%推荐', 'author': '凯洛琳・米勒', 'realse_times': '2018-05-01', 'times': '22530次', 'price': '33.90'}
{'range': '16', 'iamge': 'http://img3m3.ddimg.cn/20/26/27939503-1_l_3.jpg', 'title': '焦虑日志', 'recommend': '100%推荐', 'author': '柯瑞妮・斯威特', 'realse_times': '2019-09-01', 'times': '38216次', 'price': '42.40'}
{'range': '17', 'iamge': 'http://img3m2.ddimg.cn/98/2/28477052-1_l_8.jpg', 'title': '成瘾:如何设计让人上瘾的产品、品牌和观念(第2版)', 'recommend': '100%推荐', 'author': '程志良', 'realse_times': '2019-11-01', 'times': '20734次', 'price': '45.00'}
{'range': '18', 'iamge': 'http://img3m0.ddimg.cn/59/25/26924000-1_l_27.jpg', 'title': '小熊很忙系列(新版套装全16册)(点读版)', 'recommend': '100%推荐', 'author': '本吉・戴维斯', 'realse_times': '2019-06-01', 'times': '2469次', 'price': '612.00'}
{'range': '19', 'iamge': 'http://img3m4.ddimg.cn/0/25/24157584-1_l_12.jpg', 'title': '克隆版大脑(如果你脑子里的一切都被计算机复制,会发生什么事?国际斯坦福研究协会人工智能中心首席科学家理查德・瓦尔丁格倾力推荐)', 'recommend': '100%推荐', 'author': '大卫・沃尔夫', 'realse_times': '2016-05-01', 'times': '15181次', 'price': '28.00'}
{'range': '20', 'iamge': 'http://img3m2.ddimg.cn/9/26/25125912-1_l_1.jpg', 'title': '舒克贝塔传(全10册)', 'recommend': '100%推荐', 'author': '郑渊洁', 'realse_times': '2017-08-01', 'times': '3903次', 'price': '180.00'}

Python 爬虫 1. 当当TOP的爬取相关推荐

  1. 从入门到入土:Python爬虫学习|实例练手|爬取猫眼榜单|Xpath定位标签爬取|代码

    此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...

  2. 从入门到入土:Python爬虫学习|实例练手|爬取百度翻译|Selenium出击|绕过反爬机制|

    此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...

  3. 从入门到入土:Python爬虫学习|实例练手|爬取新浪新闻搜索指定内容|Xpath定位标签爬取|代码注释详解

    此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...

  4. 从入门到入土:Python爬虫学习|实例练手|爬取百度产品列表|Xpath定位标签爬取|代码注释详解

    此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...

  5. Python 爬虫实战,模拟登陆爬取数据

    Python 爬虫实战,模拟登陆爬取数据 从0记录爬取某网站上的资源连接: 模拟登陆 爬取数据 保存到本地 结果演示: 源网站展示: 爬到的本地文件展示: 环境准备: python环境安装 略 安装r ...

  6. Python爬虫利用18行代码爬取虎牙上百张小姐姐图片

    Python爬虫利用18行代码爬取虎牙上百张小姐姐图片 下面开始上代码 需要用到的库 import request #页面请求 import time #用于时间延迟 import re #正则表达式 ...

  7. Python爬虫笔记(3)- 爬取丁香园留言

    Python爬虫笔记(3)- 爬取丁香园留言 爬取丁香园留言:主要用到了模拟登录 爬取丁香园留言:主要用到了模拟登录 import requests, json, re, random,time fr ...

  8. Python爬虫--笔趣阁小说爬取

    Python爬虫–笔趣阁小说爬取 爬虫用到的插件 import requests from lxml import etree 小说目录页 以小说"我有百万技能点"为例,在笔趣阁搜 ...

  9. python爬虫之股票数据定向爬取

    python爬虫之股票数据定向爬取 功能描述 目标:获取上交所和深交所所有股票的名称和交易的信息 输出:保存到文件中 技术路线:requests-bs4-re 前期分析 选取原则:股票的信息静态存在H ...

最新文章

  1. 牛客网NOIP赛前集训营-普及组(第一场)
  2. event 和 window.event
  3. C# 读取TXT文本数据 添加到数据库
  4. android attrs获取_Android 常用侧滑栏实现
  5. POC of settype read harmonization - using description settype as example
  6. DDD实战课--学习笔记
  7. Taro多端开发实现原理与项目实战(一)
  8. 我对正向代理和反向代理的理解
  9. 【报告分享】2020中国直播电商趋势洞察与运营指导报告.pdf(附下载链接)
  10. JavaScript的闭包与应用
  11. 地图经纬度转换(百度,高德,谷歌,Leaflet)
  12. 谷歌插件安装(不翻墙方式)
  13. lgv50进入工程模式_LG手机工程模式进入方法及菜单指令翻译(适用G6、G7、V20、V30等)...
  14. 正弦波振荡的常见电路
  15. PC端,微信扫码实现拨打电话的功能
  16. 运动模糊(MotionBlur)
  17. 如何查看.mdf文件数据库版本信息
  18. Vue和elementUI常用组件问题
  19. 在微信公众号中写html代码吗,微信公众号内容如何利用html编辑?
  20. 设计模式之委派模式(不属于23种经典设计模式之一)

热门文章

  1. 又发现几个有趣实用的网站
  2. idea java 相同代码,本地报错Invalid UTF-8 middle byte 0x3f,其他人都正常
  3. DecimalFormat的用法 Java小数(float、dobule)格式化
  4. Linux下eSata热插拔的设置
  5. windows 免注册COM (配置manifest)
  6. 信息技术计算机老师继续教育培训心得,【信息技术继续教育培训心得】_信息技术继续教育培训之收获与感想...
  7. SOLIDWORKS保存不同格式的区别
  8. 16、网络通信交换机系统知识技能资料归纳1
  9. lightroom 闪退_图片压缩JPEGmini—PS/Lightroom插件介绍
  10. 浙江师范数学与计算机学院李老师,浙江师范大学数学与计算机科学学院导师教师师资介绍简介-李金其教授...