Python爬虫初识

目标对象为静态网站

爬虫架构

  1. URL管理器
  2. 网页下载器(urllib2)
  3. 网页解析器(BeautifulSoup)
Created with Raphaël 2.1.0 URL管理器 URL管理器 网页下载器 网页下载器 网页解析器 网页解析器 提供URL链接 提供网页内容 补充网页中关联的URL地址

运行流程

Created with Raphaël 2.1.0 调度器 调度器 URL管理器 URL管理器 下载器 下载器 解析器 解析器 应用 应用 有待爬URL? 是/否 获取1个代爬URL URL 下载URL内容 URL内容 解析URL内容 价值数据、新URL列表 收集价值数据 新增到待爬URL

对象介绍

URL管理器:管理带抓取的URL集合和已经抓取的URL集合

避免重复抓取、循环抓取

功能:

  • 添加新URL到待爬集合中
  • 判断URL是否在容器中已有
  • 判断是否爬取结束
  • 获取待爬URL
  • 将待爬URL转为已爬

存取方式:

  • 内存:set()
  • 关系数据库:MySQL
  • 缓存数据库:redis

网页下载器

常见的网页下载器:urllib2、requests

import urllib2
response = urllib2.urlopen('http://www.baidu.com')
print response.getcode()#获取状态码,200表示获取成功
cont = response.read()#读取内容
import urllib2
request = urllib2.Request(url)#创建request对象
request.add_data('a','1')#添加用户数据
request.add_header('Aser-Agent','Mozilla/5.0')#设置头信息
response = urllib2.urlopen(request)
import urllib2,cookielib
cj = cookielib.CokieJar()
#HTTPCookieProcessorProxyHandler,HTTPSHandler,HTTPRedirectHandler
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
urllib2.install_opener(opener)
response = urllib2.urlopen("http://www.aidu.com/")

应用

  • 资源聚合
  • 数据分析
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值