· Python利用Xpath和requests包。爬取整站小说内容。
1 首先寻找要爬取的站点,进行分析。
image.png
image.png
根据网站内容,可以看到是根据tab页进行分类。点击不同的tab页面,可以发现每个分类都是通过
image.png
https://www.biqugecom.com/list/1-1.html,https://www.biqugecom.com/list/4-1.html链接上的数子在区分不同的类别。可以先构建出这几种分类的代码
注意,该网站是https类型,不要想当然的是http请求。http会拒绝访问
通过tab页面可以发现是1到8种分类。代码如下。
image.png
image.png
image.png
点开每个分类页,可以发现该网站做的比较简单,都是简单的html元素构成。每部小说的链接也是直接显示在a标签下。通过Xpath 获取到了一本小说的链接。
再根据一本小说的链接爬取该小说的章节链接,
一本小说的Xpath表达式:
//[@class='media-heading book-title']/a/@href
一章的Xpath表达式:
//[@id='content']/text()
全部代码如下:
# -*- coding: utf-8 -*-
import os
import time
import requests
import random
from lxml import etree
'''
爬取全站小说
'''
# 爬取网站域名
HOST = 'https://www.biqugecom.com'
# User-Agent 随机切换请求头
user_agent = [
&#