目的:学习正则表达式
过程中遇到的问题:
item[1]后面忘记写逗号,导致item[2]执行时语法错误;
RE中引用的字符串中有"|",被优先识别为“或”,导致抓取的数据存储时另外成为一个集合,用"."替代即可;
python中range函数的用法,range(1,6)={1,2,3,4,5}

具体程序如下:

#起点月票榜TOP100
import requests
import re
import jsondef request_qidian(url):try:response = requests.get(url)if response.status_code == 200:return response.textexcept requests.RequestException:return Nonedef parse_result(html):pattern = re.compile('<div class="book-img-box">.*?>(\d+)<.*?<h4><a href=.*?"qd_C40".*?>(.*?)</a></h4>.*?<p class="author">.*?target="_blank".*?>(.*?)</a><em>.</em><a href=.*?>(.*?)</a>.*?<p class="intro">\r *(.*?)\r.*?</li>',re.S)items = re.findall(pattern,html)for item in items:yield {'No.': item[0],'name' : item[1],'author' : item[2],'genre' : item[3],'intro' : item[4]}def write_item_to_file(item):print('开始写入数据 ====> ' + str(item))with open('bookrank.txt', 'a', encoding='UTF-8') as f:f.write(json.dumps(item, ensure_ascii=False) + '\n')f.close()def main(page):url = 'https://www.qidian.com/rank/yuepiao?page=' + str(page)html = request_qidian(url)items = parse_result(html) # 解析过滤我们想要的信息for item in items:write_item_to_file(item)if __name__ == "__main__":for i in range(1,6):main(i)

python爬虫 起点月票榜TOP100相关推荐

  1. python爬虫 - 起点女生榜单爬取 - 1

    python爬虫 - 起点女生榜单爬取 ​ 最近一直在追庆余年,顺带瞄了一眼小说,真真是精彩(虽然因为范闲多妻的设定接受不了就放弃了). ​ 说来说去,还是钟爱女频的修仙小说,所以就想爬一下起点女生网 ...

  2. Python爬虫—猫眼电影排行TOP100

    学习Python爬虫也有段时间了,之前也看了许多大神的案例,自己也琢磨了爬取原理,由于是个人公号记录,就省去教科书式教学,纯属记录,由于爬取过程中一直着力于自身技能,所有代码均未作批注,以后文章中必须 ...

  3. Python爬虫实战 - 电影榜单Top250

    (内容仅供技术探讨,切勿用于商业用途) 好久没有去电影院看电影了,新上映的电影因为版权原因看不了,老电影又不知道看什么,好难啊...不如我们看看榜单上都有啥好电影推荐吧,这次就对某瓣电影下手吧 一.开 ...

  4. 【python爬虫】猫眼电影TOP100电影封面下载

    在上次爬取信息的基础上下载图片. 下载挺容易的 在封面命名上画了大笔时间..... import requests import bs4 from bs4 import BeautifulSoup i ...

  5. 微博数据爬虫——V影响力榜top100用户(一)

    1.分析网页结构 网页链接如下:https://v6.bang.weibo.com/czv/domainlist?date=202103&period_type=month 可使用选择器提取b ...

  6. python爬虫-豆瓣喜剧电影评分top100的电影-小林月

    数据展示: 排行榜向下滑动的时候发起一个请求 查看请求方法,网址,以及返回形式 直接利用requests模块上代码 import requests if __name__=="__main_ ...

  7. python 爬虫(起点)网络小说

    1 先确定要爬取的小说是get 请求换是post 请求 1.1先在网站上打开一篇小说: 1.2 f12 进去开发者模式 1.3 切换到NetWork 发现有一个空白,可以点击左侧的小说内容 NetWo ...

  8. 【爬虫实战】Python 爬取起点热榜,再也不怕没有小说看了!

    最近看完一部小说<大奉打更人>,看得我热血沸腾.但是看完后,有选择困难症的我又不知道可以看什么了. 于是,我打算开发一个爬虫,爬取起点热榜. 一.导入所需库 我们使用 requests 来 ...

  9. python爬虫获取起点中文网人气排行Top100(快速入门,新手必备!)

    本篇博客小菌为大家带来的是用python爬虫获取起点中文网人气排行Top100的分享,希望大家能在学习的过程中感受爬虫的魅力!         我们先根据网址https://www.qidian.co ...

最新文章

  1. Gson转换 — json数据转换为Object实体公共方法
  2. 机器学习如何改变大数据管理
  3. 用Format创建格式化对象举例
  4. 有了 for (;;) 为什么还需要 while (true) ? 到底哪个更快?
  5. [物理学与PDEs]第2章第2节 粘性流体力学方程组 2.6 一维粘性热传导流体动力学方程组...
  6. 左神算法:二叉树的最大 / 最小深度(普通+Morris遍历进阶)(Java版)
  7. Python中sort()和sorted()的区别
  8. ElasticSearch的一些核心概念
  9. JQuery与springmvc实现多个文件上传操作
  10. 0021:孩子也是要将心比心的
  11. 区块链教程之以太坊开发连接主网和测试网
  12. 添加scoped后,某些css样式不起作用
  13. 个人大数据征信查询浅谈与撸待现象
  14. Calendar的用法
  15. 怎么用matlab做三维正方体,用Matlab三维网线图函数mesh绘制正方体
  16. synchronized的弊端
  17. apr各个版本工具包下载及安装教程
  18. 2018滴滴Web前端实习生面经
  19. DEEP GRAPH INFOMAX
  20. 外汇交易机会的选择,两点教您选择外汇交易机会

热门文章

  1. 进程知识库-应用程序进程列表
  2. 测试基于STM32的ADIS16405评估板,并在匿名四轴上实时显示3轴陀螺仪+3轴加速度计+3轴磁力计 波形。本文最后还公开一个基于C# 的串口波形显示客户端源码。
  3. 算法题-报数游戏(java)
  4. 网络安全——会话层安全协议
  5. UC研发团队热招中!(12月20日更新版)
  6. Matlab三维折线图绘制–surf 函数的使用
  7. 欧尼酱讲JVM(02)——类的加载过程
  8. eclipse安装m2e
  9. Java实现UDP协议
  10. 夏日茶庄java_基于jsp的点心阁茶楼-JavaEE实现点心阁茶楼 - java项目源码