这次是学院的一次作业,也是自己的一次实践,所以拿出来一起学习学习。

下面开始今天的正题:我今天要爬136书屋的谁的青春不迷茫这本书的所有章节及其对应的内容。

 

◆环境: Python3 + Macos。

◆开发工具:PyCharm。

◆内容:爬取136书屋谁的青春不迷茫这本书的全部内容

◆思路:先爬取某一章的内容,然后再爬取全部章节链接地址,然后抽取其中内容。

◆要爬取的链接如下:http://www.136book.com/shuidiqingchunbumimang/

 

主页截图如下:

 

爬虫实战|爬小说《谁的青春不迷茫》_小说

主页

 

页面上面有一行小字,不知道各位朋友有没有注意到,“暂不提供谁的青春不迷茫txt全集下载,请记住域名:www.136book.com",这样就没办法下载了?不存在的!今天我们就来下载一下。

 

首先分析一下这个网站:每当点击其中各个章节的时候,是通过控制网址后面/eqlrcjd,这样类似的一串英文的不同,来区分每一章节。

 

爬虫实战|爬小说《谁的青春不迷茫》_书籍_02

自序截图

 

我们接着在主页开启chrome浏览器开发者工具,进行页面审查,很轻松,经过一圈查看,发现小说的内容在Network下面的Doc模块下。

 

爬虫实战|爬小说《谁的青春不迷茫》_小说_03

主页分析

 

每一章的链接地址都是有规则地存放在<li>中。

 

爬虫实战|爬小说《谁的青春不迷茫》_书籍_04

主页每一章页面链接地址

 

经过分析,总章节爬取应该和每一章差不多,所以我们先来搞定每一章,然后再搞定全部章节。


我们只需要打开其中一章,然后进行分析,我们要爬取的内容全都包含在这个<div>里面。

 

爬虫实战|爬小说《谁的青春不迷茫》_书籍_05

某一章

 

代码如下:

 

爬虫实战|爬小说《谁的青春不迷茫》_小说_06

 

运行后的截图:

 

爬虫实战|爬小说《谁的青春不迷茫》_书籍_07

第一次尝试

 

显然下载了第一章的内容,但是没有达到完全自动化下载到电脑里,也没有达到整本书的下载,我们接下来,进一步优化。

 

总章节内容:

 

所有的内容都放在一个所有的内容都放在一个

<div id=”book_detail” class=”box1″>

中。

 

这儿有两个一模一样的

<div id=”book_detail” class=”box1″>

 

第一个<div>包含着最近更新的章节,第二个<div>包含着全集内容。

请注意,我们要爬取的是第二个<div>中的内容。

 

 

爬虫实战|爬小说《谁的青春不迷茫》_小说_08

总章节

 

代码如下:

 

爬虫实战|爬小说《谁的青春不迷茫》_书籍_09

 

运行后截图:

 

爬虫实战|爬小说《谁的青春不迷茫》_小说_10

总章节截图

 

爬取全部章节及其内容
将每个解析出来的链接循环代入到url中解析出来,并将其中的文本爬取出来,并且写到本地/Users/wangchao/Desktop/xs66.rtf中。

 

代码如下:

 

爬虫实战|爬小说《谁的青春不迷茫》_书籍_11

 

由于电脑原因,我只好用word打开。

 

爬虫实战|爬小说《谁的青春不迷茫》_书籍_12

 

总结:通过这次作业的实际操作,我学到了很多,最重要的是思路。

 

爬虫实战|爬小说《谁的青春不迷茫》_书籍_13