爬取笔趣阁小说网站上的所有小说(一)
爬取笔趣阁小说网站上的所有小说(一)
网址为:https://www.biqukan.cc/topallvisit/1.html
反反爬虫
爬虫首先要做的就是看看目标网址有没有反爬虫手段,一般网站都是有的,但是想这种网站的话,一般不会太厉害,所以只要价格请求头就好了。
user_agent = r'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.119 Safari/537.36'
head = {'User-Agnet': user_agent, }
分析网址
打开网址的调试模式,第一章方法:按F12打开调试模式,然后点击调试窗口左上角的鼠标按钮,选择一个元素(小说)就可以看到对用的内容了;第二周方法,也可以在一个小说上点击右键,选择检查(Chrome浏览器)或审查(Firefox浏览器),就可以得到以下内容:
通过观察我们可以发现,对应打开的小说的源代码,上下对比可以考到每个小说的所有内容都在一个div里面,所以我们只需获得这些div就可以得到网址了;
# 获得网页源码html = requests.get(url=first_url,headers=head)# 把我们使用的编码改成和网站相同的编码html.encoding = html.apparent_encoding# 使用BeautifulSoup清理源码,意思就是改变成我们人类看着方便的方式展示soup = BS(html.text, "html.parser")#所有包含小说网址的divbook_name_lists=soup.findAll(class_='caption')
findAll方法是可以通过个元素的名册可以找到所有的元素,并返回一个列表。
获取小说网址
因为我们现在只需要一个小说的网址,所以只要一下内容就可以提取到了。不需要包含图片的div。
<div class="caption"><h4><a href="https://www.biqukan.cc/book/37390/" title="总裁爹地惹不起">总裁爹地惹不起</a></h4><small class="text-muted fs-12">上官娆 / 著</small><p class="text-muted fs-12 hidden-xs"> 一场渡假,被当小姐,回国还撞见未婚夫出轨。她怒然消失离开。五年后,她带着天才萌宝回归。小宝参加钢琴大赛,哪料到,儿子竟然还打..</p></div>
写入文件
book_name_lists已经包含了当前页面所有小说的地址,现在只需要循环提取并写入we年就达到了我们得目的,看代码:
# 开始写入文件with open('第'+str(i) + '页.txt', 'a+', encoding='utf-8') as f:# 文档的头部信息# 遍历每本书for book in book_name_lists:# 书名print(book.a['title'])# 书链接print(book.a['href'])f.write(book.a['href']+'\n')
记得在最后加‘\n’换行符,不然第二个网址会写在第一个网址后面,造成混乱。
这里我们选择每一页写入一个网址,一也包含030个小说。
源码
import requests
from bs4 import BeautifulSoup as BS
import time
# 请求头
user_agent = r'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.119 Safari/537.36'
head = {'User-Agnet': user_agent, }# 以10页为例
for i in range(1,11):# 地址first_url='https://www.biqukan.cc/topallvisit/'+str(i)+'.html'# 获得网页源码html = requests.get(url=first_url,headers=head)# 把我们使用的编码改成和网站相同的编码html.encoding = html.apparent_encoding# 使用BeautifulSoup清理源码,意思就是改变成我们人类看着方便的方式展示soup = BS(html.text, "html.parser")book_name_lists=soup.findAll(class_='caption')# 开始写入文件with open('第'+str(i) + '页.txt', 'a+', encoding='utf-8') as f:# 文档的头部信息# 遍历每本书for book in book_name_lists:# 书名print(book.a['title'])# 书链接print(book.a['href'])f.write(book.a['href']+'\n')#当前页面已经写入成功print("第" + str(i) + "页结束**********")# 睡眠一秒time.sleep(1)
爬取笔趣阁小说网站上的所有小说(一)
下载等功能在此链接
爬取笔趣阁小说网站上的所有小说(一)相关推荐
- 爬取笔趣阁小说网站上的所有小说(二)
爬取笔趣阁小说网站上的所有小说(二) 网址为:https://www.biqukan.cc/topallvisit/1.html 我们已经拿到了所有小说的地址爬取笔趣阁小说网站上的所有小说(一),现在 ...
- python3+正则(re)增量爬虫爬取笔趣阁小说( 斗罗大陆IV终极斗罗)
python3+re 爬虫爬取笔趣阁小说 斗罗大陆IV终极斗罗 爬取前准备 导入的模块 分析 正则的贪婪与非贪婪 附完整代码示例 爬取前准备 导入的模块 import redis #redis数据库 ...
- python爬取小说爬取_用python爬取笔趣阁小说
原标题:用python爬取笔趣阁小说 首先打开笔趣阁网址,链接,搜索自己想要的小说. 在网站内单击右键,点击检查,会出现如下界面! 我们需要的章节信息就在我划的这块, 可以将每个标签点一下,它对应的内 ...
- Python爬虫之爬取笔趣阁小说下载到本地文件并且存储到数据库
学习了python之后,接触到了爬虫,加上我又喜欢看小说,所以就做了一个爬虫的小程序,爬取笔趣阁小说. 程序中一共引入了以下几个库: import requests import mysql.conn ...
- python爬取最新说章节_练习_Python3 爬取笔趣阁最新小说章节
警告:本文代码仅供学习,禁止违法使用或商用. 这里拿人气小说<黎明之剑>来举个栗子,喜欢小说<黎明之剑>的朋友们请支持正版阅读. 笔趣阁网站上的其他书籍基本上的都可以套用,其他 ...
- python爬取小说写入txt_Python BeautifulSoup 爬取笔趣阁所有的小说
这是一个练习作品.用python脚本爬取笔趣阁上面的免费小说. 环境:python3 类库:BeautifulSoup 数据源:http://www.biqukan.cc 原理就是伪装正常http请求 ...
- 2021年scrapy一分钟内爬取笔趣阁整本小说存为txt|解决章节排序问题
本人是一个小说迷,喜欢用电纸书看小说,但苦于难以寻找网络小说的txt版本,加之最近学习了一下怎么用scrapy爬取网页数据,所以想到去使用scrapy框架来爬取笔趣阁小说存为txt文件,在爬取过程中对 ...
- python爬取笔趣阁小说(附源码)
python爬取笔趣阁小说 文章目录 python爬取笔趣阁小说 前言 一.获取小说目录结构 获取目录连接 请求代码 解析目录 XPath tqdm 解析 二.获取小说章节结构 请求代码 解析章节 代 ...
- java爬虫爬取笔趣阁小说
java爬虫爬取笔趣阁小说 package novelCrawler;import org.jsoup.Connection; import org.jsoup.HttpStatusException ...
最新文章
- GPT-3会做小学应用题了!60亿击败1750亿,并非参数越大越好
- ZigBee TI ZStack CC2530 2.4 IAR软件版本
- ComponentArt TreeView for ASP.NET - Core Features
- python怎么限制输出精度_谈谈关于Python里面小数点精度控制的问题
- POS消费机C#例子代码
- android高德地图自定义图层,自定义图层-Canvas
- C语言试题二十九之编写函数int function(int lim,int aa[max])求出小于或等于lim的所有素数并放在aa数组中,该函数返回所求的素数的个数。
- C++和Lua交互教程(基于LuaBridge)
- HDU6395 Sequence(矩阵快速幂+数论分块)
- 进程栈大小 与 线程栈大小-转
- php yii框架使用MongoDb
- 最小可用ID(4种方法,详细讲解)
- eclipse中jsp文档无语法着色,安装Eclipse Java Web Developer Tools插件
- 求助:为什么我用360浏览器和UC浏览器打不开JAVA中的index.html文件? 一打开就显示浏览器首界页...
- 阿里云何勉:如何定义团队的研发效能?
- 富士施乐s2110多vlan共享问题
- 关于ArcMap中道路、河道中心线提取过程
- 陶森大学计算机专业收入水平,2020PayScale计算机专业本科薪水排行
- JavaScript妙用
- 英文字体设计标志需要注意什么?