1.Request庫
Request庫有七個基本方法:
首先以requests庫的request方法進(jìn)行講解:
其次,以其中典型的get方法進(jìn)行說明:
1.
r=requests.get(url)
首先get構(gòu)造一個向服務(wù)器請求資源的 Request對象 ,r是一個返回的一個包括服務(wù)器資的 Response對象 。
2.
r=requests.get(url,params=None,**kwargs)
params:url中的額外參數(shù),字典或者字節(jié)流格式...可以修改url內(nèi)容
**kwargs是12個可以控制的參數(shù):
特別指出,headers是一個字典,可以修改http頭,比如有些網(wǎng)站禁止爬蟲使用,我們可以修改user-agent:
hd = {'user‐agent': 'Chrome/10'}
r = requests.request('POST', 'http://python123.io/ws', headers=hd)
其余6中與get類似。
最后,是Request的標(biāo)準(zhǔn)模板:
try:
r=requests.get(url)
r.raise_for_status
r.encoding=r.apparent_encoding
return r.text
except:
return ""
2.Beautiful Soup庫
Beautiful Soup庫是解析、遍歷、維護(hù)“標(biāo)簽樹”的功能庫。
1.首先,三種遍歷方式:下行遍歷、上行遍歷,平行遍歷。
(平行遍歷發(fā)生在同一個父節(jié)點(diǎn)下的各節(jié)點(diǎn)間。)(復(fù)數(shù)的都是迭代變量,用在for循環(huán)中)
使用方法:
from bs4 import BeautifulSoup
import bs4
soup=BeautifulSoup(html,"html.parser")#soup則為返回的html內(nèi)容
soup.prettify()#為html文本增加‘\n’使得看起來更好看一些
find方法:
soup.find_all(name, attrs, recursive, string, **kwargs)
3.正則表達(dá)式(RE)
正則表達(dá)式的表示類型是raw string:表示為r'text'。raw string是不包括對轉(zhuǎn)義符再次轉(zhuǎn)義的字符串。就是使用\d的時候,\不需要寫成\\表示轉(zhuǎn)義。
?
?
?
Re庫默認(rèn)貪婪匹配,即輸出匹配最長的子串。但是存在多種匹配,都可以在操作符后面加?變成最小匹配。
?
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
