千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁  >  技術(shù)干貨  > requests模塊

requests模塊

來源:千鋒教育
發(fā)布人:qyf
時(shí)間: 2022-09-20 17:01:59 1663664519

requests模塊

  爬蟲中通過什么模擬瀏覽器工作?重點(diǎn)來啦!那就是requests模塊。

  requests模塊

  requests文檔http://docs.python-requests.org/zh_CN/latest/index.html

  requests模塊的作用:

  • 發(fā)送http請(qǐng)求,獲取響應(yīng)數(shù)據(jù)

  requests模塊是一個(gè)第三方模塊,需要在你的python(虛擬)環(huán)境中額外安裝

  • pip/pip3 install requests

  安裝完成之后我們就可以模擬瀏覽器向外發(fā)出請(qǐng)求了。

  如何實(shí)現(xiàn)呢?首先看一下發(fā)出get請(qǐng)求的代碼實(shí)現(xiàn):

  # 需求:通過requests向百度首頁發(fā)送請(qǐng)求,獲取該頁面的源碼

  # 步驟1: 導(dǎo)入requests模塊

  import requests

  # 步驟2: 確定訪問目標(biāo)url

  url = 'https://www.baidu.com'

  # 步驟3. 向目標(biāo)url發(fā)送get請(qǐng)求

  response = requests.get(url)

  # 步驟4: 打印響應(yīng)內(nèi)容

  print(response.text)

  就這樣輕松的我們通過requests模塊跟百度打了一個(gè)“招呼”,但是說真的,挺假的!!!因?yàn)榧傺b的不像唄!

  所有瀏覽器在訪問百度的時(shí)候都是該帶都帶著,比如上面提到的請(qǐng)求行,請(qǐng)求頭或者請(qǐng)求體的內(nèi)容。

  我們這個(gè)是赤裸裸的訪問哪,人家百度也挺好脾氣的,沒有說你是爬蟲我就不給你東西了。但是怎樣才能偽裝的更像一些呢。

  最基本的就是添加請(qǐng)求頭了,大家可以通過開發(fā)者工具中的Network自行觀察。

  我們這里怎么添加呢?

  大家運(yùn)行代碼可以發(fā)現(xiàn),會(huì)打印出很多的內(nèi)容,那這個(gè)內(nèi)容是什么呢?這就是服務(wù)器收到了你的請(qǐng)求,把你想要的東西給你了。

  我們打印出來看起來很亂,但是瀏覽器可是這些標(biāo)簽的翻譯專家,所以瀏覽器上你看到的是一個(gè)百度的首頁面,但是我們通過程序看到的是像下面一樣的代碼。

  而通過瀏覽器的開發(fā)者工具Network看就整齊很多,因?yàn)闉g覽器就是干這個(gè)沒辦法。

  但是上面大家看到的只是響應(yīng)體的內(nèi)容,因?yàn)樵贖TTP協(xié)議中,響應(yīng)也是分成了三部分:就是響應(yīng)行,響應(yīng)頭和響應(yīng)體。我們?cè)跒g覽器中看到的都是響應(yīng)體的內(nèi)容顯示。

tags:
聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
什么是域控制器?

一、域控制器的定義域控制器是指在Windows Server操作系統(tǒng)中部署Active Directory服務(wù)的服務(wù)器。Active Directory是微軟公司開發(fā)的目錄服務(wù),用...詳情>>

2023-10-15 00:10:28
深度學(xué)習(xí)模型權(quán)重h5、weights、ckpt、pth有什么區(qū)別?

1.來源框架不同h5格式通常用于Keras和TensorFlow框架,weights用于Darknet框架,ckpt是TensorFlow框架的一種格式,而pth則主要用于PyTorch框架...詳情>>

2023-10-15 00:05:17
大數(shù)據(jù)測(cè)試工程師需要具備哪些技能?

一、理解大數(shù)據(jù)概念大數(shù)據(jù)測(cè)試工程師需要理解大數(shù)據(jù)的基本概念和原理,如分布式存儲(chǔ)、MapReduce、實(shí)時(shí)計(jì)算等。他們還需要了解如何處理大規(guī)模的...詳情>>

2023-10-14 23:43:03
為什么SpringBoot的 jar 可以直接運(yùn)行?

一、JAR文件的結(jié)構(gòu)與執(zhí)行方式Spring Boot的JAR包是Java Archive的縮寫,它是一種壓縮文件格式,可以將Java項(xiàng)目的類文件、資源文件以及依賴庫等...詳情>>

2023-10-14 23:01:49
站群服務(wù)器是什么?

站群服務(wù)器的含義與用途站群服務(wù)器主要用于支持站群,即由一組相互鏈接的網(wǎng)站組成的群體。這些網(wǎng)站通常由同一組織或個(gè)人擁有,并且經(jīng)常會(huì)互相鏈...詳情>>

2023-10-14 22:46:12
快速通道