Python自帶:urllib,urllib2
第三方:requests
架構: Scrapy
urllib 和urllib2子產品都做與請求URL相關的操作,但他們提供不同的功能。
urllib2: urllib2.urlopen可以接受一個Request對象或者url,(在接受Request對象時,并以此可以來設定 一個URL的headers),urllib.urlopen隻接收一個url。
urllib 有urlencode,urllib2沒有,是以總是urllib, urllib2常會一起使用的原因
scrapy是封裝起來的架構,他包含了下載下傳器,解析器,日志及異常處理,基于多線程,twisted的方式 處理,對于固定單個網站的爬取開發,有優勢,但是對于多網站爬取100個網站,并發及分布式處理不 夠靈活,不便調整與擴充