爬蟲時url中http和https的區別

2022-05-21 17:54:10 字數 1317 閱讀 5601

今天在爬取乙個網頁時發現總是爬取不成功,資訊量很少,只有幾行**,而原網頁**量是很多的,後來我把url中的https換成了http後就把網頁原始碼全部爬取了,查了資料後發現url中使用http和https是有很大區別的:http獲取資料時資訊齊全,https獲取資料的資訊有缺失,在確定網路位址後,一般採用http

如何訪問沒有採用https協議的**:

from urllib import

request

#匯入pythopn ssl處理模組

import

ssl#

利用非認證上下文環境替換認證的上下文環境

#之前12306沒有採用https協議,需要這樣設定一下,18年開始採用了之後就不用這樣操作了

url = "

"rsp =request.urlopen(url)

html =rsp.read().decode()

print(html)

1.http和https的基本概念

http:是網際網路上應用最為廣泛的一種網路協議,是乙個客戶端和伺服器端請求和應答的標準(tcp),用於從www伺服器傳輸超文字到本地瀏覽器的傳輸協議,它可以使瀏覽器更加高效,使網路傳輸減少。

https:是以安全為目標的http通道,簡單講是http的安全版,即http下加入ssl層,https的安全基礎是ssl,因此加密的詳細內容就需要ssl。

2.http與https之間的區別

http協議傳輸的資料都是未加密的,也就是明文的,因此使用http協議傳輸隱私資訊非常不安全,為了保證這些隱私資料能加密傳輸,於是網景公司設計了ssl(secure sockets layer)協議用於對http協議傳輸的資料進行加密,從而就誕生了https。簡單來說,https協議是由ssl+http協議構建的可進行加密傳輸、身份認證的網路協議,要比http協議安全。

https和http的區別主要如下:

1、https協議需要到ca申請證書,一般免費證書較少,因而需要一定費用。

2、http是超文字傳輸協議,資訊是明文傳輸,https則是具有安全性的ssl加密傳輸協議。

3、http和https使用的是完全不同的連線方式,用的埠也不一樣,前者是80,後者是443。

4、http的連線很簡單,是無狀態的;https協議是由ssl+http協議構建的可進行加密傳輸、身份認證的網路協議,比http協議安全。

HTTP 協議中 URI 和 URL 區別

統一資源標誌符uri就是在某一規則下能把乙個資源獨一無二地標識出來。拿人做例子,假設這個世界上所有人的名字都不能重複,那麼名字就是uri的乙個例項,通過名字這個字串就可以標識出唯一的乙個人。現實當中名字當然是會重複的,所以身份證號才是uri,通過身份證號能讓我們能且僅能確定乙個人。那統一資源定位符u...

HTTP中URI和URL的區別

統一資源標誌符uri就是在某一規則下能把乙個資源獨一無二地標識出來。拿人做例子,假設這個世界上所有人的名字都不能重複,那麼名字就是uri的乙個例項,通過名字這個字串就可以標識出唯一的乙個人。現實當中名字當然是會重複的,所以身份證號才是uri,通過身份證號能讓我們能且僅能確定乙個人。那統一資源定位符u...

爬蟲時帶有中文url如何處理

爬蟲過程中需要構建url,有的url不可避免的 出現中文字元 例如 泰山石膏 湖北 直接輸入帶有中文字元的url有可能會出現編碼錯誤,原因是url裡面不允許帶有中文 這時候上網上搜尋可能會檢視需要使用 from urllib.parse import quote來對中文進行轉換,然而整個轉換url之...