最近闲的蛋疼想看一些爽文

百度到了一篇《超级学生》,在线看了一下还行,但是找了半天txt没找到完整版的

于是只能自己来爬一篇完整版的小说!

小说D版地址:https://www.enwds.com/195/

进第一章,查看源代码,发现小说内容<div id="content"><p>...</p><p>...</p>...</div>里面

爬内容分了两步:先爬<div>...</div>里面的,再爬<p>...</p>里面的。

但是不能只爬一章,还要继续爬,找下一章的链接,在<a id="pager_next" href="..." target="_top" class="next">下一章</a>里面

还要爬标题,在<h1>第...章:...</h1>里面

于是分了四个正则表达式:

  1. story_pattern1 = re.compile(r'<div id="content">(.*?)</div>', re.S)
  2. story_pattern2 = re.compile(r'<p>(.*)</p>', re.S)
  3. next_pattern = re.compile(r'<a id="pager_next" href="(.*?)"', re.S)
  4. title_pattern = re.compile(r'<h1>(.*?)</h1>', re.S)

最后流程是:

  1. 打开链接
  2. 获取html内容
  3. 获取小说内容(粗)
  4. 获取下一章链接
  5. 获取标题
  6. 获取小说内容(细)
  7. 去掉内容html标签
  8. 写入标题
  9. 写入小说内容
  10. 打开下一章链接

这样循环下去,就爬到了一篇小说!

源代码:

import urllib.request
import reurl = 'https://www.enwds.com/195/541422.html'
url_head = 'https://www.enwds.com'
next_url = ['']
file = open(r"D:\route\xxxx.txt", "a+")while next_url[0] != '/195/':temp = urllib.request.urlopen(url)content = temp.read().decode('utf-8')story_pattern1 = re.compile(r'<div id="content">(.*?)</div>', re.S)story_pattern2 = re.compile(r'<p>(.*)</p>', re.S)next_pattern = re.compile(r'<a id="pager_next" href="(.*?)"', re.S)title_pattern = re.compile(r'<h1>(.*?)</h1>', re.S)story_content = re.finditer(story_pattern1, content)next_url = re.findall(next_pattern, content)url = url_head + next_url[0]title = re.findall(title_pattern, content)file.write(title[0] + '\n\n')print(title[0])for match in story_content:match_content = re.finditer(story_pattern2, match.group())for aa in match_content:result = re.sub(r'<.*?>', "", aa.group())file.write(result + '\n\n')

python爬虫爬网络小说相关推荐

  1. Python爬虫—爬取小说名著

    周末闲来无事,本来想看一看书的,结果也没看进去(RNG输的我真是糟心...) 于是就用python写了一个爬虫,来爬取小说来看,防止下次还要去网上找书看. 我们先找一个看名著的小说网 我们打开http ...

  2. python爬虫爬取小说网站并转换为语音文件

    前言 作为一个技术宅,本着为眼睛着想的角度考虑,能少看屏幕就尽量少看屏幕,可是又是一个小说迷,那就开动脑筋爬一下小说转换成语音来听书吧 第一章:爬取小说文件 把目标定在小说存储量比较大的网站:起点中文 ...

  3. python 爬虫爬取小说信息

    1.进入小说主页(以下示例是我在网上随便找的一片小说),获取该小说的名称.作者以及相关描述信息 2.获取该小说的所有章节列表信息(最重要的是每个章节的链接地址href) 3.根据每个章节的地址信息下载 ...

  4. Python爬虫爬取小说

    近来闲的无聊,天天逛CSDN看到python多火热多火热,就自己根据教程学习爬虫,参考了好几个博文,忘了地址是啥就不贴出来了 开发工具:PcCharm 开发环境:Python3.8 这次爬取的小说网站 ...

  5. 关于python爬虫爬取小说

    写了一个下载小说的爬虫,具体代码如下: 现在就是有一个问题,如何在不打乱章节顺序的情况下提高爬取的速度呢??? from urllib.parse import quote import reques ...

  6. python 小说cms系统_「博文小说网」Python爬虫爬取小说网站 - seo实验室

    博文小说网 #!/usr/bin/env Python # -*- coding: utf-8 -*- # @Author : Woolei # @File : book136_singleproce ...

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

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

  8. python爬虫爬取《斗破苍穹》小说全文

    网络爬虫的入门学习:python爬虫爬取小说全文 python爬虫首先导入基本爬虫库requests:import requests,安装命令pip install requests,使用pychar ...

  9. python爬虫对炒股有没有用_使用python爬虫实现网络股票信息爬取的demo

    实例如下所示: import requests from bs4 import BeautifulSoup import traceback import re def getHTMLText(url ...

最新文章

  1. 4.4 为什么使用深层表示-深度学习-Stanford吴恩达教授
  2. python安装redis模块_安装redis及python redis模块
  3. 架构师必须掌握的 10 条设计原则
  4. super(Net,self).__init__() 的含义
  5. xfce 双击窗口标题栏无法最大化解决办法
  6. Trie 树内存消耗问题
  7. 返回一个整数数组中最大子数组的和---环形数组
  8. 二分算法和冒泡排序时间复杂度分析
  9. 实战jvisualvm
  10. Opencv之疲劳检测
  11. 安捷伦电源6319D实现GPIB通信
  12. 使用C++,Python,Matlab进行facial 68 points landmarks
  13. linux 向日葵 使用方法,远程控制工具——Centos7上向日葵安装使用
  14. cfg格式文件在服务器哪里,cfg文件,小编教你怎么打开cfg文件
  15. python 中 np.sum()函数 通俗易懂理解!
  16. ce玩家_当玩家选择错误时
  17. PyQt5基本控件详解之QTextEdit(五)
  18. 设计模式六大原则(SOLID)
  19. android变身蓝牙键鼠,使用BluetoothHidDevice将安卓手机同时模拟成鼠标和键盘
  20. 微型计算机原理和接口技术试卷,2017-1微机原理和接口技术试卷A(答案)-.doc

热门文章

  1. 牛客多校9 Cells
  2. 小米开源自研移动端深度学习框架MACE
  3. 2019秦皇岛CCPC J - MUV LUV EXTRA
  4. Linux WEB服务器集群在电子商务中的应用
  5. 网摘精灵教程:网摘精灵软件包里都有什么东西
  6. 超级详细的IntelliJIDEA安装教程
  7. false-positive rate
  8. 中国热固性丙烯酸涂料市场现状及未来发展趋势
  9. java 新浪短链接_java生成短连接(调用新浪微博api生成)
  10. 关于VS2008+RADE CATIA V5R22的配置问题