1. 程式人生 > >關於爬蟲工具。

關於爬蟲工具。

請求獲取網頁資訊類工具:urllib,urllib3,requests

注:在python2.x裡面有urllib和urllib2;在python3.x裡面就把urllib和urllib2合成一個urllib;urllib3是在python3.x了裡面新增的第三方擴充套件.Requests它會比urllib更加方便,可以節約我們大量的工作。(用了requests之後,你基本都不願意用urllib了)一句話,requests是python實現的最簡單易用的HTTP庫,建議爬蟲使用requests庫。

基本用法:

import requests

res=requests.get('http://www.julongyoule.cn')    #獲取,返回一個http請求response

res.encoding='utf-8' #可以指定編碼,不然中文會亂碼

res.text #取得http相應的html程式碼

解析網頁資料工具:beautifulsoup,etree,Selecter等。(個人掌握etree和beautifulsoup就ok了)

etree基本用法:(配合xpath)

from lxml import etree

etree.HTML(res.text).xpath('//a/@href') 

#返回一個列表,注意解析的必須是html程式碼,requests返回的response的text

beautifulsoup基本用法(利用css選擇方式select):

from bs4 import Beautifulsoup

soup=Beautifulsoup(res.text,'lxml')    #注意解析的必須是html程式碼,requests返回的response的text

a_list=soup.select('a')    #返回的是一個列表 必須在for迴圈中使用a['href']才能取得連結

Selecter基本用法(scrapy框架所使用的解析器):

from parsel import Selecter

sel_list=Selector(text=res.text).xpath('//a/@href').extract()    #返回的也是一個列表,注意這裡的extract(),與etree的區別