python urllib3离线安装_全球Python库下载前10名
Python的簡潔性,不僅僅在于其語法簡單,還有各種python庫函數的支持,為大家節省了大量的時間和精力,所以網上有人戲稱python的編程者為調包俠。但是你知道全球最受歡迎的python庫嘛?今天小編就從PYPI網站的過去365天的python庫下載量上,來看一下全球最火的22個python庫。
01.Urllib3
Urllib3在過去365天中,下載量達到了9.55億次。Urllib3是一個功能強大的,用于http客戶端的python庫,相比于python標準庫中的urllib庫,Urllib3提供了更全面的特性,包括線程安全,客戶端SSL/TLS驗證等,不僅如此,Urllib3廣泛的被其他庫依賴,有接近1200個庫依賴Urllib3庫。Urllib3的使用也非常的簡單,如下圖所示:
圖中我們創建請求對象,然后請求www.baidu.com網站的信息,輸出狀態碼和返回的數據信息。
02.six庫
six庫是對于python2和python3的兼容庫,使用six庫可以使寫的代碼不用進行修改就能在python2或者python3的環境下進行運行,如下圖所示:
我們可以看到,six庫對Python2和Python3的名字等做了統一,比如在Python2中,字符串的類型使unicode,而在python3中,字符串的類型是str,Python3叫,那么就可以使用six.string_types的類型。如果運行在Python2上,six. string_types就是unicode,如果運行在Python3上,six. string_types就是str類型。但是由于python2已經停止維護,所以six函數庫的熱度也將會在未來下降。
03.botocore、s3transfer庫
這里botocore和s3transfer都與亞馬遜網頁服務(AWS)支持相關。Botocore是boto3庫的基礎庫,而boto3則是允許使用者在編寫軟件時使用亞馬遜服務,例如亞馬遜的S3服務等。而s3transfer則是用于管理亞馬遜S3傳輸的python庫。因此同樣被boto3庫所依賴。
上圖所示的程序中,我們首先創建一個s3服務,然后查看所有的Bucket內容,最后我們使用s3服務上傳了一個圖片文件。
04.requests
對于requests函數庫,想必大家都不會陌生,requests庫使得我們對于網頁的請求變得很簡單。由于requests使用更加簡單,便捷,因此在實際的應用中,大家更趨向于使用requests庫而不是urllib3。
上圖中我們利用requests庫來請求百度的首頁,并輸出狀態碼和網頁源代碼。
05.python-dateutil
python-dateutil模塊是對于python內置庫datetime的擴展和增強,示例功能如下圖所示:
上述程序中,我們通過操控dateutil庫中的relativedelta來實現輸出去年的今天功能,并通過parse模塊來將字符串轉化為datetime類型的日期。
06.pip庫
大家對于python庫的安裝,想必大都用過pip進行安裝,pip是Python官方推薦的包管理工具,大家在使用pip安裝的時候,可以通過pip install 進行在線的安裝,也可以先下載特定包的whl文件,然后通過pip install 的方式,離線安裝特定的包。而進行卸載的時候,可以通過pip uninstall 進行卸載。如下圖所示:
07.certifi庫
瀏覽器在進行網頁瀏覽的時候,需要在瀏覽器和網頁服務器之間建立加密連接,而SSL就是用于這一用途,通過SSL連接可以保護在每次交互期間交換敏感的數據,例如我們通過某寶進行網頁交易的時候,對于密碼等信息的傳遞。
而在進行驗證的過程中,需要在客戶端安裝根證書。那么certifi庫的作用是什么呢,當我們去爬取網頁的時候,有時候會遇到 SSL:CERTIFICATE_VERIFY_FAILED的錯誤,這就是SSL驗證錯誤,遇到這種錯誤的話,我們可以利用certifi庫進行解決,如下圖所示。
上圖中通過certifi軟件包使用Mozilla的證書來進行證書的驗證。從而解決SSL驗證報錯的問題。
08.idna庫
idna庫在我們日常的編程中,很難遇到,因為它解決的問題我們幾乎遇不到。idna是一種在應用程序中的國際化域名協議,用于處理包含非ASCII字符的域名機制。由于瀏覽器和郵件等不支持除了ASCII碼以外的其他字符,這對于很多國家,例如咱們中國、德國、法國等非英語國家來說,非常的不方便,所以idna的主要功能就是將國際的unicode域名和ASCII字符串進行相互的轉換。如下圖所示:
上圖中我們分別實現了將國際的unicode域名轉化為ASCII字符串,并實現了逆轉換。
09.pyyaml
pyyaml庫是針對于yaml文件進行處理的庫,經常用于對于程序中的一些配置信息的讀寫和存儲。yaml同json文件類似,也是一種配置文件。下圖展示的是利用pyyaml庫對yaml文件進行讀寫操作。
10.chardet庫
對于字符串的編碼問題,一直是很難處理的一個問題,雖然python提供了str和bytes的數據類型,并且可以通過encode()和decode()方法來轉換字符串的編碼方式,但是對于不知道編碼類型的情況下,很難準確的進行解碼操作。
所以chardet庫就排上了用場。chardet用來對輸出字符串的編碼類型進行判斷,并輸出編碼類型的判斷信息和字符串的語言類型。如下圖所示:
上圖中,我們可以發現,使用chardet可以很方便的進行檢測編碼。獲取到編碼后,再轉換為str類型,就可以方便的進行后續處理。
通過小編的介紹,大家可以看到python的函數庫中雖然有的不是很出名,但是卻默默的發揮著自己巨大的作用,成為python編程中不可或缺的一環。真可謂:別看模塊小,用處真不少!
結尾
最后多說一句,小編是一名python開發工程師,這里有我自己整理了一套最新的python系統學習教程,包括從基礎的python腳本到web開發、爬蟲、數據分析、數據可視化、機器學習等。想要這些資料的可以關注小編,并在后臺私信小編:“01”即可領取。
總結
以上是生活随笔為你收集整理的python urllib3离线安装_全球Python库下载前10名的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: stm32串口传输数据第一个数据被吞_s
- 下一篇: ugui unity 图片缩放循环_Un