? python ? ? 爬虫 ?    发布于 2016-12-09   551人围观   0条评论

参考慕课网的爬虫教程

简单的爬虫架构

title

  • 爬虫调度端:启动、停止、监听爬虫
  • 爬虫程序:
    • url管理器:管理已爬取ur和待爬取的url,取出一个待爬取url送入网页下载器
    • 网页下载器:将url指定的网页下载存储成字符串,将字符串送入网页解析器
    • 网页解析器:从字符串中解析出有价值的信息和数据,并爬取取出其中其他网页的url,送入url管理器
    • 三个模块形成循环
  • 得到价值数据

title

URL管理器

title

网页下载器

title

  • 第一种方法
  1. import urllib2
  2. # 直接请求
  3. response = urllib2.urlopen('http://www.baidu.com')
  4. # 获取状态码
  5. print response.getcode()
  6. # 读取内容
  7. cont = response.read()
  • 第二种方法
  1. import urllib2
  2. # 创建Request对象
  3. request = urllib2.Request(url)
  4. # 添加数据
  5. request = request.add_data('a','1')
  6. # 添加http的head
  7. request = add_header('User-Agent','Mozilla/5.0')
  8. # 发送请求获取结果
  9. response = urllib2.urlopen(request)
  • 第三种方法
    title
  1. import urllib2,cookielib
  2. # 创建cookie容器
  3. cj = cookielib.CookieJar()
  4. # 创建一个opener
  5. opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
  6. # 给urllib2安装opener
  7. urllib2.install_opener(opener)
  8. # 使用带有cookie的urllib2访问网页
  9. response = urllib2.urlopen("http://www.baidu.com")

网页解析器

title
title
title

  • pip install beautifulsoup4 安装beautifulsoup4
  • 创建BeautifulSoup对象
  1. from
查看更多