●前言
前面咱们初步了解了爬虫的步骤以及bs4,并且学习了如何批量爬取图片,想必各位都对爬虫有了基本的了解,当然在学习爬虫之前,还是建议先掌握好python基础,并且对html,css,js以及ajax等知识有一些基本的了解,然后就可以愉快的爬了,好了,回归正题,今天我们来看看如何爬取小说。
●全球高武
给大家安利一本名为《全球高武》的小说,正版出自起点中文网,常常高居榜一,内容非常得劲,可惜收费,这篇文章就教大家如何白嫖,当然有能力的小伙伴还是建议支持下正版,毕竟作者创作不易,没能力的话就跟着我一起白嫖吧。
●准备工作
1.背景介绍
网站:笔趣阁
https://www.biduo.cc
笔趣阁,一个无广告无弹窗的优质盗版小说网站,但是只支持在线浏览,并不支持下载和打包,今天就教大家如何下载这里的小说。
2.安装bs4和lxml
pip install beautifulsoup4 # cmd安装BeautifulSoup4
或者
easy_install beautifulsoup4
pip install lxml # 安装lxml解释器
●小试牛刀
1.分析网页,构造章节链接
进入笔趣阁官网,搜索书名,进入目录页
F12调试,定位目录位置,找到章节链接
模拟请求,并解析页面,获取名为list的div内容
from bs4 import BeautifulSoup
import requests
url = 'https://www.biduo.cc/biquge/14_14141/'
res = requests.get(url=url, timeout=30)
html = res.text
bf = BeautifulSoup(html, 'lxml')
div = bf.find_all('div', id='list')
print(div)
我们可以看到章节的链接和章节名都获取到了,下面我们把它们提取出来并存放在列表里供后续使用
server = 'https://www.biduo.cc' # 主域名,拼接章节链接使用
a_bf = BeautifulSoup(str(div[0]), 'lxml')
a = a_bf.find_all('a')
names = []
urls = []
for each in a:
names.append(each