当前位置:   article > 正文

Python爬虫介绍_python爬虫有控制器吗

python爬虫有控制器吗

Python爬虫介绍

 

什么是爬虫:

爬虫:一段自动抓取互联网信息的程序,从互联网上抓取对于我们有价值的信息;

 

Python爬虫架构:

Python爬虫架构主要由五个部分组成,分别是 调度器、URL管理器、网页下载器、网页解析器、应用程序(爬取的有价值数据)

1)调度器:

相当于一台电脑的CPU,主要负责调度URL管理器、下载器、解析器之间的协调工作;

2)URL管理器:

包括待爬取的URL地址和已爬取的URL地址,防止重复抓取URL和循环抓取URL,实现URL管理器主要用三种方式:通过内存、数据库、缓存数据来实现;

3)网页下载器:

通过传入一个URL地址来下载网页,将网页转换成一个字符串,网页下载器有urllib(Python官方基础模块),包括需要登录、代理和Cookie;还有requests(第三方包);

4)网页解析器:

将一个网页字符串进行解析,可以按照我们的要求来提取出我们有用的信息,也可以根据DOM树的解析方式来解析;

网页解析器有:

1)正则表达式:

    直观,将网页转成字符串通过模糊匹配的方式来提取有价值的信息;

    但当文档比较复杂的时候,该方法提取数据的时候就会非常困难;

2)html.parser:Python自带的;

3)beautifulsoup:第三方插件,可以使用Python自带的html.parser进行解析,也可以使用lxml进行解析;

4)lxml:第三方插件,可以解析xml和HTML;

html.parser和beautifulsoup,以及lxml都是以DOM树的方式进行解析的;

5)…

5)应用程序:

就是从网页提取的有用数据组成的一个应用;

调度器工作图解:

示例:

urllib实现下载网页内容:(PY3)

  1. #!/usr/bin/python
  2. # -*- coding:utf-8 -*-
  3. import urllib.request
  4. import urllib
  5. url = 'http://www.baidu.com'
  6. response = urllib.request.urlopen(url)
  7. content = response.read().decode('utf-8')
  8. print(content)

(content是html文档太长就不附在这里了)

 

其他的后续会有示例,我们慢慢理解;

 

参考链接:

菜鸟教程《Python爬虫介绍

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/659252
推荐阅读
相关标签
  

闽ICP备14008679号