urllib3

軟件截圖:
urllib3
軟件詳細信息:
版本: 1.5
上傳日期: 20 Feb 15
開發: Andrey Petrov
許可: 免費
人氣: 2

Rating: nan/5 (Total Votes: 0)

urllib3是線程安全的連接池和文件後支持Python的HTTP庫。
亮點:
  *重新使用的多個請求相同的插座連接(HTTPConnectionPool)
  *文件發布(encode_multipart_formdata)
  *內置重定向和重試(可選)
  *線程安全
什麼是錯的urllib和urllib2的?
有兩個重要的功能從Python標準庫丟失:連接重複使用/池和文件發布。這是不是非常難實現這些自己,但它更容易使用已經做了工作,你的模塊。
Python標準庫的urllib和urllib2的關係不大對方。它們被設計為獨立的,獨立的,每一個解決問題的一個不同的範圍,並urllib3遵循類似的靜脈中。
我為什麼要重用連接?
性能。當你通常做的urllib電話,與每個請求創建一個單獨的套接字連接。通過重用現有的插座(因為HTTP 1.1的支持),請求將佔用更少的資源在服務器的終端,並提供更快的響應時間,在客戶端的結束。用一些簡單的基準測試(見測試/ benchmark.py),從google.com下載網址15的兩倍左右的速度在使用HTTPConnectionPool(使用1連接),比使用普通的urllib(使用15個連接)。
這個庫是完美的:
  *談起的API
  *爬行網站
  *任何地方能夠發布文件,處理重定向和重試的情況是非常有用的。它的相對輕量級的,因此它可用於任何東西!
例子:
轉至例子維基更漂亮的語法高亮的例子。
但是,長話短說:
從urllib3進口HTTPConnectionPool
API_URL ='http://ajax.googleapis.com/ajax/services/search/web“
http_pool = HTTPConnectionPool.from_url(API_URL)
田= {'V':'1.0','Q':'urllib3'}
R = http_pool.get_url(API_URL,域)
打印r.status,r.data

什麼是此版本中的新

  • 在新增urllib3.add_stderr_logger()快速讓STDERR調試日誌urllib3。
  • 在本機全解析URL(包括身份驗證,路徑,查詢,片段)提供urllib3.util.parse_url(URL)。
  • 在內置的重定向將切換方法,“GET”如果狀態代碼為303(問題#11)
  • 在urllib3.PoolManager條發送請求的URI之前,計劃和主機。 (第8號)
  • 在新urllib3.exceptions.DecodeError例外的時候自動解碼的基礎上,Content-Type頭,失敗。
  • 修正了池枯竭和洩漏的連接(第76#)的bug。增加了明確的連接關上池驅逐。添加urllib3.PoolManager.clear()。
  • 在99% - > 100%的單元測試覆蓋率。

什麼在1.4版本的新

  • 在小AppEngine上相關的修正
  • 從mimetools.choose_boundary切換到uuid.uuid4()。
  • 在改進URL解析。 (問題#73)
  • 在IPv6的地址支持。 (問題#72)

什麼版本1.3是新的

  • 在刪除前1.0棄用API
  • 在重構傭工成urllib3.util子模塊。
  • 修正了多部分編碼,以支持具有多個值的鍵列表的元組。 (第48號)
  • 在回應固定多的Set-Cookie頭沒有得到在Python 3合併正確(第53號)
  • 在AppEngine上的支持與Py27。 (問題#61)

  • 涉及到Python 3串VS字節
  • 在小encode_multipart_formdata修復。

什麼版本1.2.2的新

  • 在不出貨測試要求固定包裝的bug。 txt。 (問題#47)

什麼在1.2.1版本新

  • 在固定與另一錯​​誤時,SSL模塊不可用。 (第41號)
  • 在位置解析錯誤,現在提高urllib3.exceptions.LocationParseError它繼承自ValueError錯誤。

什麼版本1.2是新的

  • 在添加的Python 3支持(3.2.2測試)
  • 在丟棄的Python 2.5的支持(在2.6.7測試2.7.2)
  • 使用select.poll而不是select.select為支持它的平台。
  • 使用Queue.LifoQueue代替Queue.Queue更積極的連接复用。配置通過覆蓋ConnectionPool.QueueCls。
  • 在固定的ImportError在安裝過程中,當SSL模塊不可用。 (第41號)
  • 在固定PoolManager方案(如HTTP - > HTTPS)之間的重定向不正確完成。 (問題#28,在V1.1問題#10破獲)
  • 在閥塊dummyserver使用webob + eventlet龍捲風來代替。去除多餘的不支持dummyserver測試後端。加插座級測試。
  • 在更多的測試。成就解鎖:99%的覆蓋率

什麼是1.1版本,新的

  • 在重構dummyserver到自己的根命名空間模塊(用於測試)。
  • 添加主機名核查VerifiedHTTPSConnection通過vendoring在Py32的ssl_match_hostname。 (第25號)
  • 在固定跨主機HTTP使用PoolManager時重定向。 (第10號)

  • 在通過的urlopen設置
  • 在固定decode_content被忽略。 (第27號)
  • 在固定超時相關的錯誤。 (問題#17,#23)

什麼是1.0.2版本,新的

  • 在VerifiedHTTPSConnection固定錯字,因為這只會存在一個如果你手動使用對象錯誤。 (感謝pyos)
  • 在製造RecentlyUsedContainer(因此PoolManager)更多的線程安全通過在包裝互斥訪問日誌。 (感謝@christer)
  • 在製造RecentlyUsedContainer更多的字典類(修正__delitem__和__getitem__行為),以測試。應該不會影響核心urllib3代碼。

什麼是1.0.1版本,新的

  • 修正了相同的連接將獲得返回的錯誤入池兩次,導致多餘的" HttpConnectionPool充滿"記錄警告。

要求

  • 在Python中

顯影劑的其他軟件 Andrey Petrov

urllib3
urllib3

12 May 15

意見 urllib3

評論沒有發現
添加評論
打開圖片!