Python 爬虫 - GeekStudioHIT/PythonHack GitHub Wiki

  • 下载器 urllib2 三种方法

    • urllib2.urlopen(url)
    • 添加 data、header
      • urllib2.Request 获取一个 request
      • 给 request 添加一个 header or data
      • urllib2.urlopen(request)
    • 特殊情景处理器
      • handler
        • HTTPCookieProcessor
        • ProxyHandler
        • HTTPSHandler
        • HTTPRedirectHandler
      • opener = urllib2.build_opener(handler)
      • urllib2.install_opener(opener)
      • urllib2.urlopen(url)
  • 网页解析器

    • 正则表达式
    • html.parser
    • Beautiful Soup
    • lxml
  • BeautifulSoup 使用方法

    • BeautifulSoup(html_doc, parser, from_encoding) 得到一个 BeautifulSoup 对象。
    • find_all or find 方法
  • SpiderMain

    • 初始化
      • url 管理器
      • html 下载器
      • html 解析器
      • html 输出器
    • craw
      • url 管理器 add_new_url
      • 然后循环,如果当前有 url,得到这个 url。downloader 去 download 这个 url 的内容。然后 paser 去解析这个 url 和 download 下来的内容,可以得到一堆新的 urls 和我们的目标数据。将这些 urls 添加到 url 管理器中。然后 outputer 去收集这些目标数据。最后 outputer 将这些数据给输出出来。