2. 发送请求获取网页内容
使用requests库发送请求,获取网页内容,这里以获取首页小说列表为例:
import requests url = 'https://www.example.com' # 替换为目标网站的首页URL response = requests.get(url) response.encoding = 'utf8' # 根据网页编码设置响应编码 html_content = response.text
3. 解析网页内容提取小说信息
使用BeautifulSoup库解析网页内容,提取小说信息,提取小说标题、作者、字数等信息:
from bs4 import BeautifulSoup soup = BeautifulSoup(html_content, 'html.parser') title = soup.find('h1', class_='title').text # 提取标题 author = soup.find('span', class_='author').text # 提取作者 word_count = soup.find('span', class_='wordcount').text # 提取字数
4. 保存小说内容
将提取到的小说内容保存到本地文件,这里以保存为txt格式为例:
with open('novel.txt', 'w', encoding='utf8') as f: f.write(title + ' ') f.write(author + ' ') f.write(word_count + ' ') f.write(soup.find('div', class_='content').text) # 提取小说正文内容并保存
5. 下载小说图片
如果小说中有图片,我们可以使用requests库下载图片并保存到本地,下载小说封面图片:
cover_url = soup.find('img', class_='cover')['src'] # 提取封面图片URL response = requests.get(cover_url) with open('novel_cover.jpg', 'wb') as f: f.write(response.content) # 保存图片到本地
6. 完整代码示例
将以上步骤整合到一起,得到完整的爬取会员小说的Python代码:
import requests from bs4 import BeautifulSoup import os def get_novel_info(url): response = requests.get(url) response.encoding = 'utf8' html_content = response.text soup = BeautifulSoup(html_content, 'html.parser') title = soup.find('h1', class_='title').text author = soup.find('span', class_='author').text word_count = soup.find('span', class_='wordcount').text content = soup.find('div', class_='content').text return title, author, word_count, content, url + '/images/cover.jpg' # 返回小说封面图片URL(假设图片位于同一目录下) def save_novel(title, author, word_count, content, cover_url): with open('novel.txt', 'w', encoding='utf8') as f: f.write(title + ' ') f.write(author + ' ') f.write(word_count + ' ') f.write(content) response = requests.get(cover_url) with open('novel_cover.jpg', 'wb') as f: f.write(response.content) print('小说已保存!') return True if __name__ == '__main__': novel_url = 'https://www.example.com/novel/1' # 替换为目标小说的URL地址(需要根据实际情况修改) if not os.path.exists('novel'): # 如果不存在novel文件夹,则创建该文件夹用于存放小说文件和图片等资源文件(可选) os.mkdir('novel') title, author, word_count, content, cover_url = get_novel_info(novel_url) save_novel(title, author, word_count, content, cover_url)
以上就是使用Python爬取会员小说的方法,需要注意的是,不同网站的结构可能有所不同,因此在实际操作时需要根据目标网站的具体结构进行调整,爬虫可能会对网站造成一定的压力,请合理控制爬取速度,遵守网站的相关规定。
标题名称:python如何爬会员小说
分享链接:http://www.mswzjz.cn/qtweb/news27/43977.html
攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能