python 3 爬取某小说网站小说,注释详细

news/2024/5/20 15:11:43/文章来源:https://blog.csdn.net/iku5200/article/details/82998286

目标:每一个小说保存成一个txt文件

思路:获取每个小说地址(图一),进入后获取每章节地址(图二),然后进入获取该章节内容(图三)保存文件中。循环

效果图:

每一行都有注释,不多解释了

import requests
from bs4 import BeautifulSoup
import osif __name__ == '__main__':# 要下载的网页url = 'https://www.biqubao.com/quanben/'# 网站根网址root_url = 'https://www.biqubao.com'# 保存本地路径path = 'F:\\python\\txt'# 解析网址req = requests.get(url)# 设置编码,浏览器查看网站编码:F12,控制开输入document.characterSet回车即可查看req.encoding = 'gbk'# 获取网页所有内容soup = BeautifulSoup(req.text, 'html.parser')# 查找网页中div的id为main的标签list_tag = soup.div(id="main")# 查看div内所有里标签li = list_tag[0](['li'])# 删除第一个没用的标签del li[0]# 循环遍历for i in li:# 获取到a标签间的内容---小说类型txt_type = i.a.string# 获取a标签的href地址值---小说网址short_url = (i(['a'])[1].get('href'))# 获取第三个span标签的值---作者author = i(['span'])[3].string# 获取网页设置网页编码req = requests.get(root_url + short_url)req.encoding = 'gbk'# 解析网页soup = BeautifulSoup(req.text, "html.parser")list_tag = soup.div(id="list")# 获取小说名name = list_tag[0].dl.dt.stringprint("类型:{}    短址:{}   作者:{}   小说名:{}".format(txt_type, short_url, author, name))# 创建同名文件夹# paths = path + '\\' + nameif not os.path.exists(path):# 获取当前目录并组合新目录# os.path.join(path, name)os.mkdir(path)# 循环所有的dd标签for dd_tag in list_tag[0].dl.find_all('dd'):# 章节名zjName = dd_tag.string# 章节地址zjUrl = root_url + dd_tag.a.get('href')# 访问网址爬取章节内容req2 = requests.get(zjUrl)req2.encoding = 'gbk'zj_soup = BeautifulSoup(req2.text, "html.parser")content_tag = zj_soup.div.find(id="content")# 把空格内容替换成换行text = str(content_tag.text.replace('\xa0', '\n'))text.replace('\ufffd', '\n')# 写入文件操作'a'追加with open(path + "\\" + name + ".txt", 'a') as f:f.write('\n' + '\n' + zjName)f.write(text)print("{}------->写入完毕".format(zjName))

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_846809.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何用自己电脑做服务器,绑定域名建一个个人网站

使用自己的电脑,下载一个tomcat服务器,并将域名解析到本机,这样就可以发布自己的网站了。不过,关机之后网站便登不上去了。这样做只是为了我们可以更好的开发调试自己的工程,网站上线之后可以让更多的朋友帮你找bug。这…

Android 学习论坛博客及网站推荐

一、博客推荐 1)http://blog.csdn.net/android_tutor(Android开发入门基础,高级进阶) 2)http://blog.csdn.net/hellogv(入门与提高,很多例子值得学习) 3)http://www.c…

【2019.6.11可用】chrome提示“无法添加来自此网站的应用、扩展程序和应用脚本”的解决办法

目前亲测可行的方法有两种,个人推荐第一种。 第一种方法(推荐) 1、在chrome上右键,打开属性。 在目标里添加参数“ --enable-easy-off-store-extension-install”。注意--前加上一个空格 2、【重启浏览器!】打开chr…

猪八戒学做网站之HTML5篇(2):编写网页的工具

一杯清茶还没有喝完,小朱告诉我,他的网页做完了,惊得我下巴都快掉了。 我张大着嘴巴来到小朱的电脑前,看到了他完成的网页,完成情况好像还不错。各位可以看一下,他的网页的完成效果: 说实话&…

猪八戒学做网站之HTML5篇(3):网页不是图片

一大早,被手机的闹铃吵醒。自从做了程序员之后,天天都感觉睡不醒。脑力劳动和体力劳动真不一样,体力劳动累了之后,睡一觉起来就什么事也没有了。而脑力劳动之后,怎么睡都睡不醒。说什么三十年前睡不醒,三十…

猪八戒学做网站之HTML5篇(5):Hello HTML

出了几天差,回来一看,猪八戒正在网上津津有味地看着什么呢。 猪八戒看见我回来了,马上站了起来:“师父,你回来啦!”一边说还一边接过我的行李包。 我把行李包递给猪八戒后问他:“我不在的这几天…

猪八戒学做网站之HTML5篇(6):标签!标签!

“师父,你在看什么呢?” “《南京!南京!》。”我头也不回地回答道。 “那我应该看什么呢?”猪八戒又问。 “标签!标签!”我还是头也没回地回答道。 “啥?”猪八戒一下子没有明白过来…

在VS2008中创建自定义控件(一)创建网站项目和自定义控件项目

本文目的: 1、创建一个创建网站项目。 2、创建一个自定义控件项目。 下文目的: 1、创建一个自定义控件。 2、将自定义控件添加到工具箱中,以便调用。 这两篇博文的最终结果如下图所示。 首先声明,用户控件和自定义控件是不同…

python从网站抓取特定内容

背景 测试需要模拟浏览器的userAgent,从网站上找到一批 http://www.fynas.com/ua 分析 非常普通的table元素维护 约有8K多条,为防止中途中断导致数据丢失选择读取一页写一页,单个文件可能吃力,选择100页数据放入一个文件的方式…

网站集成第三方登录--QQ

网站平台集成第三方登录--QQ 注:仅适用于线上测试,不提供本地测试(供新手参考)第一步:1、 登陆QQ互联开放平台首页 http://connect.qq.com/ ,注册开发者信息2、 选择菜单栏“管理中心”创建应用-网站3、 填…

网站集成第三方登录--sina

网站平台集成第三方登录--sina 注&#xff1a;仅适用于线上测试&#xff0c;不提供本地测试&#xff08;供新手参考&#xff09;第一步&#xff1a;1、 登陆新浪微博开放平台首页 http://open.weibo.com/ &#xff0c;登录后编辑开发者信息 及身份认证2、 开始创建应用 并将<…

iframe引入的网站不能全屏宽度有滚动条_程序猿进阶不能错过的最全前端性能优化秘籍(一)!...

很多人通常在完成了产品之后才会去考虑性能。把与性能相关的事情拖到项目的最后来做&#xff0c;所做的也不过是对服务器上的config文件进行一些微调、串联、优化以及部分特别小的调整。而现在&#xff0c;技术已经有了翻天覆地的变化。一个项目的性能是非常重要的&#xff0c;…

linux网络方面命令大全,网络操作命令 - Linux常用命令大全_Linux教程_Linux公社-Linux系统门户网站...

网络操作命令命令功能命令功能ftp传送文件telnet远端登陆bye结束连线并结束程序rlogin远端登入ping检测主机netstat显示网络状态8.1 ftp命令ftp命令用来传输文件&#xff0c;非常重要。如果在网络上看到一个很重要的文件&#xff0c;就可以用这个命令把那个文件传到自己的机器上…

如何将静态网站挂在github上

github.page是一个免费的静态托管服务&#xff0c;我们可以将静态网站托管在github上。具体的方法如下&#xff1a; 在github中新建一个username.github.io的公开仓库。&#xff08;username必须和你的github账户名完全一致。&#xff09;如果有静态网站的制作经验&#xff0c…

利用Lucene.net搭建站内搜索(4)---数据检索

前面的文章&#xff0c;我们已经对要检索的数据创建了索引&#xff0c;现在要做的就是为用户提供全文搜索的功能。通过Lucene我们还可以简单而高效地对搜索结果进行访问。此文和大家简单的说说利用Lucene.net进行数据的搜索。当我们查询Lucene的一个索引时&#xff0c;Lucene会…

50佳精美的单页网站设计作品欣赏(上篇)

单页网站是指只有一个页面的网站&#xff0c;这种形式的网站曾经非常流行&#xff0c;现在依然有很多人喜欢。不过&#xff0c;并不是每个网站都适合做成单页&#xff0c;一般都是内容比较少而且将来内容也不怎么增加的情况才适合这样做。如果你打算做一个这样的网站&#xff0…

Web 应用程序项目与网站项目比较分析

在 Visual Studio 中&#xff0c;我们可以创建“Web 应用程序项目”或“网站项目”。每种项目类型各有优缺点&#xff0c;所以我们要选择可以满足需要的最佳项目类型&#xff0c;应了解各项目类型之间的差异。今天将深入的学习这两种项目之间的异同。 项目文件结构 Web 应用…

旅游类建站要求

旅游建站要求&#xff0c; 第一大类&#xff1a;系统的建设&#xff0c;竟然你是技术员&#xff0c;我就不多说 1、系统采用松散构架&#xff0c;方便后期处理&#xff0c;管理员可自动修改、调整模版的设计或者模版中的图片文字等 2、后期修改模版网站要便于操作&#xff0c;…

php修改根目录,phpStudy如何修改端口或WWW目录(网站根目录)

方法1&#xff1a;phpStudy修改端口或WWW目录(网站根目录)非常简单&#xff1a;点击『其他选项菜单』-『phpStudy设置』-『端口常规设置』。打开Apache的配置文件httpd-conf文件&#xff1a;打开phpstudy界面 ->点击“其他选项菜单” -> 点击“打开配置文件” -> …

某网站安全检测之数据库手工注入

某网站安全检测之数据库手工注入 一、引子 长夜慢慢&#xff0c;无心睡眠…… 无意中翻到几年前听的一首名为《祖先的阴影》的摇滚&#xff0c;这么长久的历史&#xff0c;混合着许多的罪恶与功绩&#xff1b;这么“灿烂的文化”&#xff0c;夹杂着太多的愚昧与文明。美…