python开发简单爬虫——笔记(更新中)

来源:互联网 发布:苏珊大妈 知乎 编辑:程序博客网 时间:2024/04/30 04:46

爬虫:自动访问互联网并提取数据的程序
爬虫架构
爬虫调度端:启动爬虫、停止爬虫、监视爬虫的运行情况
1.Url管理器:管理将要爬取的url和已经爬取的url。将待爬取的url传送给网页下载器。(防止重复抓取,循环抓取)(实现方式:内存;关系数据库;缓存数据库)

2.网页下载器:将Url指定的网页下载下来,保存为一个字符串。将这个字符串传送给网页解析器进行解析。(python网页下载器:urllib)
urllib方法1

import urllib.request#直接请求response=urllib.request.urlopen('http://www.baidu.com/')#获取状态码,如果是200则表示成功print(response.getcode())#读取内容cont=response.read()

urllib方法2

import urllib.request#创建request对象request=urllib.request.Request('http://www.baidu.com/')#添加数据request.add_header('User-Agent','Mozilla/5.0')#发送请求获取结果response=urllib.request.urlopen(request)

3.网页解析器:一方面,会解释出有价值的数据;另一方面,解析出字符串中的url,将其补充到url管理器。
网页解析器有好几种。
- 正则表达式 :模糊匹配,不适合复杂的文档
- html.parser :python自带的解析器
- Beautiful Soup :第三方插件,用于HTML,XML
- lxml :第三方插件

三个模块,形成了一个循环。只有有未爬取的url,这个循环就会一直继续下去。

0 0
原创粉丝点击