基本配置:

  • Python版本:3.6
  • 相关模块:
from bs4 import BeautifulSoup
import requests, sys
'''
遇到不懂的问题?Python学习交流群:1136201545满足你的需求,资料都已经上传群文件,可以自行下载!
'''

下载《17K》网小说

class downloader(object):def __init__(self):""":rtype: object"""self.server = 'http://www.17k.com'  # 网站地址self.target = 'http://www.17k.com/list/2731559.html'  # 目录URL地址self.names = []            #存放章节名self.urls = []            #存放章节链接self.nums = 0            #章节数

获取下载链接

    def get_downloader_url(self):req = requests.get(self.target)  # 获取URL地址内容req.encoding = 'utf-8'  # 转码html = req.text  # 保存get到的内容div_bf = BeautifulSoup(html, 'html.parser')  # 使用BeautifulSoup进行解析div = div_bf.find_all('div', class_='Main List')  # 查询符合条件的内容a_bf = BeautifulSoup(str(div[0]),'html.parser')#重新解析a = a_bf.find_all('a')#查找元素为'a'的内容self.nums = len(a[11:])for each in a[11:]:self.names.append(each.string)#把章节名称添加到变量self.urls.append(self.server + each.get('href'))#把章节URL地址添加到变量

获取章节内容

    def get_contents(self,target):req = requests.get(target)#获取URL地址内容req.encoding = 'utf-8'#解码html = req.textbf = BeautifulSoup(html, 'html.parser')#解析texts = bf.find_all('div', class_='readAreaBox content')#使用查找章节正文texts = texts[0].text.replace('\xa0' * 8, '\n\n')#使用replace方法,剔除空格,替换为回车进行分段return texts

将爬取的文章内容写入文件

    def writer(self, name, path, text):write_flag = Truewith open(path, 'a', encoding='utf-8') as f:f.write(name + '\n')f.writelines(text)f.write('\n\n')if __name__ == "__main__":dl = downloader()dl.get_downloader_url()print('《正道潜龙》开始下载:')for i in range(dl.nums):dl.writer(str(dl.names[i]), '正道潜龙.txt', dl.get_contents(dl.urls[i]))sys.stdout.write("  已下载:%.3f%%" %  float(i/dl.nums) + '\r')sys.stdout.flush()print('《正道潜龙》下载完成')

Python爬虫:爬取17K小说相关推荐

  1. Python爬虫-爬取17K小说

    随笔记录方便自己和同路人查阅. #------------------------------------------------我是可耻的分割线--------------------------- ...

  2. 使用scrapy爬虫,爬取17k小说网的案例-方法一

    无意间看到17小说网里面有一些小说小故事,于是决定用爬虫爬取下来自己看着玩,下图这个页面就是要爬取的来源. a 这个页面一共有125个标题,每个标题里面对应一个内容,如下图所示 下面直接看最核心spi ...

  3. python爬虫爬取起点小说_python3爬虫-使用requests爬取起点小说

    import requests from lxml import etree from urllib import parse import os, time def get_page_html(ur ...

  4. python爬虫爬取网络小说

    近日沉迷网络小说不能自拔的某人让我趁着网站限免把她想看的小说爬取下来,免得到时候又要付费看书,本来对于这种又要看正版又想占便宜不给钱的行为的我是深恶痛绝的,然而...为了小命我还是做一下吧.     ...

  5. Python爬虫爬取某小说网的教程(含全代码)#大佬勿喷

    1.主要使用三个库 import parsel import requests import os 2.利用parsel解析网页 3.利用os库保存一本小说 4.链接上 小说专题: https://w ...

  6. 如何用python爬虫爬取网络小说?

    这里是17K小说网上,随便找了一本小说,名字是<千万大奖>. 里面主要是三个函数: 1.get_download_url() 用于获取该小说的所有章节的URL. 分析了该小说的目录页htt ...

  7. 使用scrapy爬虫,爬取17k小说网的案例-方法二

    楼主准备爬取此页面的小说,此页面一共有125章 我们点击进去第一章和第一百二十五章发现了一个规律 我们看到此链接的  http://www.17k.com/chapter/271047/6336386 ...

  8. python爬虫简单实例-爬取17K小说网小说

    什么是网络爬虫? 网络爬虫(Web Spider),又被称为网页蜘蛛,是一种按照一定的规则,自动地抓取网站信息的程序或者脚本. 爬虫流程 先由urllib的request打开Url得到网页html文档 ...

  9. Python爬虫爬取纵横中文网小说

    Python爬虫爬取纵横中文网小说 学了一周的爬虫,搞了这个东西,自己感觉还不错,有什么问题可以提一提哈 目标:纵横中文网-完本-免费小说 网址:http://book.zongheng.com/st ...

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

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

最新文章

  1. BS开发中常用的Javascript技术
  2. 使用hibernate的this.getSession().createSQLQuery(sql).list();方法查询数据时出现查到的数据和想象的不一致,很是郁闷,诡异...
  3. 【C 语言】二级指针作为输入 ( 二维数组 | 抽象业务函数 | 二维数组打印函数 | 二维数组排序函数 )
  4. python工程计算软件库_python中常用的科学计算工具包
  5. Linux 2.6 完全公平调度算法CFS(Completely Fair Scheduler) 分析
  6. 为什么Java不允许super.super.method();
  7. mysql在空闲8小时之后会断开连接(默认情况)
  8. 【LeetCode笔记】399. 除法求值(Java、图)
  9. delphi 同盘移动文件所用时间测试(文件大小约6,083,545,088 字节)
  10. 9月10日见!OPPO再曝Reno2相机细节:你想要的全都有
  11. git clone --depth=1引起的问题
  12. fatal error C1010
  13. 深度学习中的优化算法之SGD
  14. [全网最新最全]2020年国内和国外安卓应用上线上架应用市场渠道集合(关键词:apk,发布,Google Play,Android,详细步骤介绍流程)
  15. 转:大数据的大价值:大数据五大成功案例深度解析
  16. 2017全国高校计算机大赛,我校在2017中国高校计算机大赛中获全国高校银奖
  17. 美团酒旅实时数据规则引擎应用实践
  18. 危机公关处理能力不可或缺的是企业成长能力
  19. 实例演示使用RDIFramework.NET 框架的工作流组件进行业务流程的定义—请假申请流程-Web
  20. 数据结构-二叉树的顺序存储

热门文章

  1. 【美团测开二面准备】
  2. 豆瓣fm android,豆瓣FM - 遇见音乐 - Android 应用 - 【最美应用】
  3. HSL和HSLA颜色
  4. 分析响应时间ns级别的TVS管个中奥秘
  5. 微软2017校招笔试题2 composition
  6. 优橙国企招聘会—5G网络优化工程师
  7. 复旦计算机学院博士张磊,张磊-计算机与信息工程学院官网
  8. Naive script setup写法上传注意
  9. SpringBoot - application.yml配置文件中yes/no,on/off在代码中读取的值为true/false
  10. mpvue 微信小程序获取 国家、省份、城市、区域 getLocations