python_爬虫实践_(二)爬取静态小说爬虫整体架构

本文介绍了静态小说网站的爬虫整体架构,包括小说列表、小说条目和具体小说页面的爬取步骤。通过示例网站解释了页面编号规律,并展示了如何处理小说信息和下载链接。对于不能直接下载的小说,文章提到了在线阅读内容的抓取策略。
摘要由CSDN通过智能技术生成

我练习了5个静态页面的小说网站,发现静态小说网站的爬虫整体套路都是差不多的;
一般都是相似的嵌套结构:
小说列表(一共有多少页小说)—(选中一页,然后点进去)–>
一页小说(每页包含多少个小说条目)—(选中一个条目,然后点进去)–>
一本具体的小说:1)直接在该页面爬取小说相关信息 2)可以下载的小说则可以直接进入下载页面,然后下载到本地;只能在线阅读的小说则需要分别爬取每一页的内容,然后组合成一本完整的小说,然后保存到本地。

下面用图片来解释嵌套结构:
以https://www.bookbao99.net/List 书包网为例(该网站2023年过期):
第一层一共有多少个页面(这里是16344页)
在这里插入图片描述
**第二层:**每一页有多少个小说条目(这里每页有24个条目)
在这里插入图片描述

第三层:一本具体的小说的页面
在这里插入图片描述
小说页面所包含的我们感兴趣的信息
在这里插入图片描述
从下载页面获取对应的下载链接

在这里插入图片描述

用图片演示完了嵌套结构,我们用代码大致演示一下嵌套结构(注意:这不是实际代码,只是代码的大致结构):
在这里插入图片描述

讲完了整体架构我们就来讲解细节的页面信息爬取(实际代码节选,即简明扼要的节选了少许代码,并不完整)

第一层:
首先是页面的编号规律,这需要我们切换页面时仔细观察地址栏的url变化,从中找出规律:
我们需要仔细观察第一层的页面编号规律:
p,t,c,o四个字母
P:代表page(第x页就是 p_x)
t:代表时间(今日上传的,本周上传的,本月上传的

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1 Introduction ...................................................7 1.1 Purpose......................................................7 1.2 Requirements .................................................8 1.3 Terminology ..................................................8 1.4 Overall Operation ...........................................12 2 Notational Conventions and Generic Grammar ....................14 2.1 Augmented BNF ...............................................14 2.2 Basic Rules .................................................15 3 Protocol Parameters ...........................................17 3.1 HTTP Version ................................................17 3.2 Uniform Resource Identifiers ................................18 3.2.1 General Syntax ...........................................19 3.2.2 http URL .................................................19 3.2.3 URI Comparison ...........................................20 3.3 Date/Time Formats ...........................................20 3.3.1 Full Date ................................................20 3.3.2 Delta Seconds ............................................21 3.4 Character Sets ..............................................21 3.4.1 Missing Charset ..........................................22 3.5 Content Codings .............................................23 3.6 Transfer Codings ............................................24 3.6.1 Chunked Transfer Coding ..................................25 3.7 Media Types .................................................26 3.7.1 Canonicalization and Text Defaults .......................27 3.7.2 Multipart Types ..........................................27 3.8 Product Tokens ..............................................28 3.9 Quality Values ..............................................29 3.10 Language Tags ...............................................29 3.11 Entity Tags .................................................30 3.12 Range Units .................................................30 4 HTTP Message ..................................................31 4.1 Message Types ...............................................31 4.2 Message Headers .............................................31 4.3 Message Body ................................................32 4.4 Message Length ..............................................33 4.5 General Header Fields .......................................34 5 Request .......................................................35 5.1 Request-Line ................................................35 5.1.1 Method ...................................................36 5.1.2 Request-URI ..............................................36 5.2 The Resource Identified by a Request ........................38 5.3 Request Header Fields .......................................38 6 Response ......................................................39 6.1 Status-Line .................................................39 6.1.1 Status Code and Reason Phrase ............................39 6.2 Response Header Fields ......................................41
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值