更多课程 选择中心


Python培训

400-996-5531

手把手教你用python写迷你爬虫架构

  • 发布:Python培训
  • 来源:拓海
  • 时间:2018-05-10 14:29

我们进行python培训学习python知识,为的就是提高自己的编程水平,将python应用于实际项目开发中去,创造出更大的价值,你会用python写网络爬虫吗?不会的话,今天就手把手教你用python写迷你爬虫架构。

今天我们先介绍爬虫的种类,然后选取最典型的通用网络爬虫,为其设计一个迷你框架。有了自己对框架的思考后,再学习复杂的开源框架就有头绪了。

今天我们会把更多的时间用在思考上,而不是一根筋的coding。用80%的时间思考,20%的时间敲键盘,这样更有利于进步。

手把手教你用python写迷你爬虫架构之时间分配

用python写迷你爬虫架构的语言&环境

语言:带足弹药,继续用Python开路!

用python写迷你爬虫架构的语言&环境

用python写迷你爬虫架构的语言&环境

用python写迷你爬虫架构的种类

用python写迷你爬虫架构

用python写迷你爬虫架构

用python写迷你爬虫架构

用python创作一个迷你框架

下面以比较典型的通用爬虫为例,分析其工程要点,设计并实现一个迷你框架。架构图如下:

用python写迷你爬虫架构的语言&环境

代码结构:

用python写迷你爬虫架构

config_load.py 配置文件加载

crawl_thread.py 爬取线程

mini_spider.py 主线程

spider.conf 配置文件

url_table.py url队列、url表

urls.txt 种子url集合

webpage_parse.py 网页分析

webpage_save.py 网页存储

看看配置文件里有什么内容:

spider.conf

用python写迷你爬虫架构

用python写迷你爬虫架构 

用python写迷你爬虫架构

用python写迷你爬虫架构 

用python写迷你爬虫架构

url_table.py

用python写迷你爬虫架构

Step 3. 记录哪些网页已经下载过的小本本——URL表。

在互联网上,一个网页可能被多个网页中的超链接所指向。这样在遍历互联网这张图的时候,这个网页可能被多次访问到。为了防止一个网页被下载和解析多次,需要一个URL表记录哪些网页已经下载过。再遇到这个网页的时候,我们就可以跳过它。

crawl_thread.py

用python写迷你爬虫架构

用python写迷你爬虫架构

用python写迷你爬虫架构

用python写迷你爬虫架构

Step 5. 页面分析模块

从网页中解析出URLs或者其他有用的数据。这个是上期重点介绍的,可以参考之前的代码。

Step 6. 页面存储模块

保存页面的模块,目前将文件保存为文件,以后可以扩展出多种存储方式,如mysql,mongodb,hbase等等。

webpage_save.py

用python写迷你爬虫架构

写到这里,整个框架已经清晰的呈现在大家眼前了,千万不要小看它,不管多么复杂的框架都是在这些基本要素上扩展出来的。

恭喜你阅读完了本文,手把手教你用python写的迷你爬虫架构虽然简单,但是可扩展性很强,复杂的框架也许是源于他哦,不信你可以试试。要是你还有更多有关于python的问题,欢迎来达内python培训机构进行咨询。

免责声明:内容和图片源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

预约申请免费试听课

填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:R语言和python语言如何殊途同归?
下一篇:我们一起来期待python3.7正式发布!

达内python培训机构就业喜报,用事实告诉你月薪过万不是梦!

python资讯|招聘AI人才开出4000万年薪,真的值吗?

你想自学python语言,因为它是黑客语言?

未来有两种人,会Python的和不懂Python的小学生?

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省