这里是17K小说网上,随便找了一本小说,名字是《千万大奖》。

里面主要是三个函数:

1、get_download_url() 用于获取该小说的所有章节的URL。

分析了该小说的目录页http://www.17k.com/list/2819620.html的HTML源码,发现其目录是包含在Volume里的A标签合集。所以就提取出了URLS列表。

2、get_contents(target) 用于获取小说指定章节的正文内容

分析了小说中第一章节的页面http://www.17k.com/chapter/2819620/34988369.html,发现其正文内容包含在P标签中,正文标题包含在H1标签中,经过对换行等处理,得到正文内容。传入参数是上一函数得到的URL。

3、writer(name, path, text) 用于将得到的正文内容和章节标题写入到千万大奖.txt

理论上,该简单爬虫可以爬取该网站的任意小说。


from bs4 import BeautifulSoupimport requests, sys'''遇到不懂的问题?Python学习交流群:821460695满足你的需求,资料都已经上传群文件,可以自行下载!'''target='http://www.17k.com/list/2819620.html'server='http://www.17k.com'urls=[]def get_download_url():req = requests.get(url = target)html = req.textdiv_bf = BeautifulSoup(html,'lxml')div = div_bf.find_all('dl', class_ = 'Volume')a_bf = BeautifulSoup(str(div[0]),'lxml')a = a_bf.find_all('a')for each in a[1:]:urls.append(server + each.get('href'))def get_contents(target):req = requests.get(url = target)html = req.textbf = BeautifulSoup(html,'lxml')title=bf.find_all('div', class_ = 'readAreaBox content')title_bf = BeautifulSoup(str(title[0]),'lxml')title = title_bf.find_all('h1')title=str(title[0]).replace('<h1>','')title=str(title).replace('</h1>','')title=str(title).replace(' ','')title=str(title).replace('\n','')texts = bf.find_all('div', class_ = 'p')texts=str(texts).replace('<br/>','\n')texts=texts[:texts.index('本书首发来自17K小说网,第一时间看正版内容!')]texts=str(texts).replace('                                          ','')return title,str(texts[len('[<div class="p">'):])def writer(name, path, text):write_flag = Truewith open(path, 'a', encoding='utf-8') as f:f.write(name + '\n')f.writelines(text)f.write('\n')#title,content=get_contents(target)#print(title,content)#writer(title,title+".txt",content)get_download_url()#print(urls)i=1for url in urls:title,content=get_contents(url)writer(title,"千万大奖.txt",content)print(str(int(i/len(urls)*100))+"%")i+=1

如何用python爬虫爬取网络小说?相关推荐

  1. python爬虫爬取网络小说

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

  2. 使用Python爬虫爬取网络美女图片

    代码地址如下: http://www.demodashi.com/demo/13500.html 准备工作 安装python3.6 略 安装requests库(用于请求静态页面) pip instal ...

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

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

  4. 如何用Python爬虫爬取网页免费小说

    如何用python爬网页(小说阅读网)免费小说 小说网址:https://www.readnovel.com/ 要导入requests和beautifulsoup4的包.pycharm点击File-& ...

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

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

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

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

  7. 如何用python爬虫爬取qq空间说说

    之前学了下爬虫一直就想爬一下QQ空间 在爬取之前需要做的准备工作 安装python3 需要的库: re 正则 selenium 需要安装 chrome 或者 Firefox 还有他们的模拟 Chrom ...

  8. 使用异步爬虫爬取网络小说

    这个重点在于aiohttp的使用,它保存文件的格式有很多种,如果要保存非文本信息需要用 async with aiohttp.ClientSession() as session:async with ...

  9. 用python来爬取网络小说

    代码如下: import requests from lxml import etree# 获取链接 url = 'https://www.*****.com/tuili/9696/xxxxx.htm ...

最新文章

  1. 也许是东半球直接底气的分库分表实践了
  2. vue中使用baidushare分享到微信无法显示bug解决方案
  3. tornado项目搭建_Day71-73 BBS项目(1)
  4. 【推荐系统】面向科研的推荐系统Benchmark诞生!
  5. NVDKC6416平台H.264算法优化
  6. LeetCode 113. 路径总和 II(回溯)
  7. Python 3.8实现支持断点续传的网络文件下载功能
  8. python 嵌套异常
  9. Leetcode每日一题:191.number-of-1-bits(位1的个数)
  10. 电影推荐系统kaggle
  11. python流量分析_python 监控流量
  12. Python爬虫实战之爬取链家广州房价_04链家的模拟登录(记录)
  13. 2018云计算行业现状及2020年云计算发展趋势
  14. 如何快速且不失真剪切与合并视频?如何将视频快速转成MP4格式?无需渲染!视频秒转MP4,剪辑合并!
  15. 【智能制造】智能制造与智能工厂的主要特征
  16. rtsp播放h265(hevc)
  17. 转载 gro转lammps
  18. 楼层标高怎么引上去_高层建筑施工标高传递的简易方法
  19. 《js闭包》超级实用 一眼看懂js闭包--Onload返回变量值
  20. 电脑屏幕扩展后电脑没有声音

热门文章

  1. 一步一步实现500px引导动画 -- 酷酷哒
  2. 计算机处理器的参数及意义,电脑硬件小知识之:CPU的命名和基本参数
  3. jsp运行linux脚本,jsp页面调用哪个Linux的shell 脚本步骤
  4. 素问·阴阳应象大论原文
  5. 云服务器上传文件软件,云服务器上传文件软件
  6. BUUCTF [NPUCTF2020]芜湖
  7. 关于Linux使用pppd拨号,自动断网,重新拨号功能
  8. js实现盒子水平垂直居中
  9. 计算神经科学和人工智能,人工智能神经网络算法
  10. CSS3——多媒体查询属性