您好,登錄后才能下訂單哦!
這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)怎么在python中使用requests模塊實(shí)現(xiàn)一個get請求,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
需求:爬取搜狗首頁的頁面數(shù)據(jù)
import requests # 1.指定url url = 'https://www.sogou.com/' # 2.發(fā)起get請求:get方法會返回請求成功的響應(yīng)對象 response = requests.get(url=url) # 3.獲取響應(yīng)中的數(shù)據(jù):text屬性作用是可以獲取響應(yīng)對象中字符串形式的頁面數(shù)據(jù) page_data = response.text # 4.持久化數(shù)據(jù) with open("sougou.html","w",encoding="utf-8") as f: f.write(page_data) f.close() print("ok")
requests模塊如何處理攜帶參數(shù)的get請求,返回?cái)y帶參數(shù)的請求
需求:指定一個詞條,獲取搜狗搜索結(jié)果所對應(yīng)的頁面數(shù)據(jù)
之前urllib模塊處理url上參數(shù)有中文的需要處理編碼,requests會自動處理url編碼
發(fā)起帶參數(shù)的get請求
params可以是傳字典或者列表
def get(url, params=None, **kwargs): r"""Sends a GET request. :param url: URL for the new :class:`Request` object. :param params: (optional) Dictionary, list of tuples or bytes to send in the body of the :class:`Request`. :param \*\*kwargs: Optional arguments that ``request`` takes. :return: :class:`Response <Response>` object :rtype: requests.Response
import requests # 指定url url = 'https://www.sogou.com/web' # 封裝get請求參數(shù) prams = { 'query':'周杰倫', 'ie':'utf-8' } response = requests.get(url=url,params=prams) page_text = response.text with open("周杰倫.html","w",encoding="utf-8") as f: f.write(page_text) f.close() print("ok")
利用requests模塊自定義請求頭信息,并且發(fā)起帶參數(shù)的get請求
get方法有個headers參數(shù) 把請求頭信息的字典賦給headers參數(shù)
import requests # 指定url url = 'https://www.sogou.com/web' # 封裝get請求參數(shù) prams = { 'query':'周杰倫', 'ie':'utf-8' } # 自定義請求頭信息 headers={ 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36', } response = requests.get(url=url,params=prams,headers=headers) page_text = response.text with open("周杰倫.html","w",encoding="utf-8") as f: f.write(page_text) f.close() print("ok")
上述就是小編為大家分享的怎么在python中使用requests模塊實(shí)現(xiàn)一個get請求了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。