- A+
所属分类:python基础入门
一 网站概述
1.书名(第一层)
源码:
<a style="font-size:18px; line-height:22px; height:22px;" href="/guwen/book_2.aspx" target="_blank"><b>论语</b></a>
2.下一页链接(第一层)
源码:
<a style="width:60px;" href="Default.aspx?p=2">下一页</a>
3.章节(第二层)
第一种情况(没有章名):
源码:
另一种情况(有章名):
源码:
4.正文及译文(第三层)
源码:
注:标红部分是需要提取的数据或进一步爬行的链接。
二 编码
1.初始化项目
这里我们设置DOWNLOAD_DELAY = 2的目的是防止爬虫被网站ban掉,同时也是减轻对服务器的压力,自己学习的同时也不要对别人产生损害。
5.修改wen.py(爬虫 核心代码)
从第一层页面我们提取了书名、书链接、下一页链接,并通过Request的meta参数向下一层传递了书名,对应函数为parse,也是爬虫开始处理的默认处理函数。
从第二层页面我们提取章名、节名、节链接,并向下一层传递了书名、章名、节名,对应函数为parseshu。
从第三层页面我们提取了该节的内容及其译文,并生成了一个item对象,该对象最终会被送到pipelines.py文件中定义的类进行处理。由于我们用的是csv文件保存数据,因此需要将数据中的半角逗号 "," 以及回车 "
" 替换掉。该层对应的函数为parsejie
6.运行主程序main.py
由于设置了下载延迟,故整个爬行过程比较长,大概两小时左右。
我的微信公众号
爱真理,得永生! 爱在灵灵久博客,网罗天下,福利大家!