第一次使用requests庫够坐,需要安裝托嚣。執(zhí)行:?pip install requests即可。
主要有7個(gè)方法患久。
requests.request() 構(gòu)造一個(gè)請(qǐng)求椅寺,支撐以下各方法的基礎(chǔ)方法
requests.get() 獲取HTML網(wǎng)頁的主要方法,對(duì)應(yīng)于HTTP的GET
requests.head() 獲取HTML網(wǎng)頁頭信息的方法墙杯,對(duì)應(yīng)于HTTP的HEAD
requests.post() 向HTML網(wǎng)頁提交POST請(qǐng)求的方法配并,對(duì)應(yīng)于HTTP的POST
requests.put() 向HTML網(wǎng)頁提交PUT請(qǐng)求的方法,對(duì)應(yīng)于HTTP的PUT
requests.patch() 向HTML網(wǎng)頁提交局部修改請(qǐng)求高镐,對(duì)應(yīng)于HTTP的PATCH
requests.delete() 向HTML頁面提交刪除請(qǐng)求溉旋,對(duì)應(yīng)于HTTP的DELETE
網(wǎng)頁有安全限制,常用的方法就是requests.get()和requests.head() 嫉髓,重點(diǎn)掌握這兩個(gè)就可以了观腊。
爬取網(wǎng)頁的通用代碼框架
try:
? ? r=requests.get(url,timeout=30)
? ? r.raise_for_status() #200是正常,其他404等都是異常
? ? r.encoding=r.apparent_encoding
? ? return r.text
except:
? ? return '異常錯(cuò)誤'
下面是爬取百度新聞的代碼:
import requests
url="http://news.baidu.com/"
try:
? ? r=requests.get(url,timeout=30)
? ? r.raise_for_status() #200是正常算行,其他404等都是異常
? ? r.encoding=r.apparent_encoding
? ? print(r.text[:1000])
except:
? ? print( '異常錯(cuò)誤')
_______________END______________