python安全攻防---爬虫基础---get和post提交数据
get提交數(shù)據(jù)1
get提交的數(shù)據(jù)就附在提交給服務(wù)器的url之后,以?開(kāi)頭參數(shù)之間以&隔開(kāi),例如/admin/user/123456.aspx?name=123&id=123
案例:寫(xiě)個(gè)腳本,在sogou自動(dòng)搜索周杰倫,并將搜索頁(yè)面的數(shù)據(jù)獲取
程序如下:
對(duì)于dict里面的內(nèi)容,我們可以在瀏覽器手動(dòng)獲得,我以Chrome瀏覽器為例:
F12或者右鍵頁(yè)面,找到檢查,點(diǎn)擊
找到network,如果沒(méi)有數(shù)據(jù),刷新一下,隨便點(diǎn)擊左邊的內(nèi)容,然后找到Request Headers,就可以找到Referer和User-Agent的值了
對(duì)于get的提交數(shù)據(jù),使用requests.get(url,headers=dict),url是我們爬蟲(chóng)的頁(yè)面,url也有我們提交的數(shù)據(jù),后面增加的headers是為了反反爬蟲(chóng)的。
運(yùn)行結(jié)果:
get提交數(shù)據(jù)2
案例:爬取豆瓣數(shù)據(jù)排行榜的數(shù)據(jù)
地址:https://movie.douban.com/typerank?type_name=%E5%96%9C%E5%89%A7&type=24&interval_id=100:90&action=
再第二個(gè)連接中我們找到了我們需要的數(shù)據(jù)
觀察Headers,找到url和header參數(shù),并且可以發(fā)現(xiàn)是get請(qǐng)求
寫(xiě)出程序:
import requestsurl = 'https://movie.douban.com/j/chart/top_list' #重新封裝參數(shù) param = {'type': '24','interval_id': '100:90','action': '','start': 0,'limit': 20, }headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36', } resp = requests.get(url=url,params=param,headers=headers)print(resp.json()) resp.close()這里可以在使用get方法時(shí)使用paams指定get的參數(shù)。
post提交數(shù)據(jù)
post提交數(shù)據(jù)的方法則是直接將數(shù)據(jù)放在http的body部分
response = requests.post(url=url,data=data)data是我們需要提交的數(shù)據(jù),字典形式
其他和post一樣
總結(jié)
以上是生活随笔為你收集整理的python安全攻防---爬虫基础---get和post提交数据的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 榴莲肉多少钱一斤啊?
- 下一篇: python安全攻防---爬虫基础--r