这节课我们用python爬取电子书三国演义并下载保存,下载网址为(),主要需要的模块有requests模块、beautifulsoup解析、lxml模块,通过发起请求--页面解析--保存数据三个步骤获取我们的资源。
1.解题思路
首先我们需要先将()该列表页中的详情页链接以及列表页中的目录拿到,分别作为获取章节内容的入口以及我们保存这些章节的名字。
2.对目录列表发起请求
这一步用requests发起请求,之前做过许多案例也专门讲解过requests怎么发起请求,因此不作详解,看下图:
3.对目录列表解析
我们从上一步获取到了完整的页面内容,但是我们只需要获取该页面中详情页的链接以及目录链接(如下图),因此我们利用beautifulsoup模块、lxml模块进行解析数据
第一步,导入beautifulsoup模块、lxml模块
第二步,用beautifulsoup实例化对象
第三步,查看链接、目录名所对应的位置
从下图我们可以看到,链接、目录名在<li>标签下,而<li>标签在div下的class="book-mulu"下面的<ul>标签下,因为代码可以这样写:
select的用法如下:
第四步,获取链接、目录名
通过上一步骤我们获取的是一个列表,因此通过for循环,获取单个<li>标签,并继续解析:
4.对详情页发起请求
我们有了详情页的链接,就可以对详情页发起请求了:
5.对详情页解析
仍旧利用beautifulsoup模块、lxml模块进行解析数据,只不过这个用find来查找我们所对应的数据,代表着div下的class="chapter_content"标签。“.text”代表读取文本内容。如果层级多,我们仍旧可以用上述的select方法
6.保存数据
按照正常的保存数据即可,之前讲过就不过多介绍了!
好了,这就是今天的内容,如果大家想要更多关于Python的信息,可关注公众号:Python教程初学讲解,获取学习资料!