欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

urllib2自定義opener詳解

 更新時間:2014年02月07日 10:02:27   作者:  
這篇文章主要介紹了urllib2自定義opener詳解,需要的朋友可以參考下

urllib2.urlopen()函數(shù)不支持驗證、cookie或者其它HTTP高級功能。要支持這些功能,必須使用build_opener()函數(shù)創(chuàng)建自定義Opener對象。

復(fù)制代碼 代碼如下:

build_opener([handler1 [ handler2, ... ]])

參數(shù)handler是Handler實例,常用的有HTTPBasicAuthHandler、HTTPCookieProcessor、ProxyHandler等。

build_opener ()返回的對象具有open()方法,與urlopen()函數(shù)的功能相同。

如果要修改http報頭,可以用:

復(fù)制代碼 代碼如下:

import urllib2
opener = urllib2.build_opener()
opener.addheaders = [('User-agent', 'Mozilla/5.0')]
opener.open('http://www.example.com/')

2. install_opener(opener)

安裝不同的opener對象作為urlopen()使用的全局opener。

3. 密碼驗證(HTTPBasicAuthHandler)

HTTPBasicAuthHandler()處理程序可用add_password()來設(shè)置密碼。

復(fù)制代碼 代碼如下:

h.add_password(realm,uri,user,passwd)

realm是與驗證相關(guān)聯(lián)的名稱或描述信息,取決于遠程服務(wù)器。uri是基URL。user和passwd分別指定用戶名和密碼。

復(fù)制代碼 代碼如下:

import urllib2
auth=urllib2.HTTPBasicAuthHandler()
auth.add_password('Administrator','http://www.example.com','Dave','123456')
opener=urllib2.build_opener(auth)
u=opener.open('http://www.example.com/evilplan.html')

4. Cookie處理(HTTPCookieProcessor)

復(fù)制代碼 代碼如下:

import urllib2,cookielib
cookie=cookielib.CookieJar()
cookiehand=urllib2.HTTPCookieProcessor(cookie)
opener=urllib2.build_opener(cookiehand)

5.代理(ProxyHandler)

ProxyHandler(proxies)參數(shù)proxies是一個字典,將協(xié)議名稱(http,ftp)等映射到相應(yīng)代理服務(wù)器的URL。

復(fù)制代碼 代碼如下:

proxy=ProxyHandler({'http':'http://someproxy.com:8080'})
auth=HTTPBasicAuthHandler()
auth.add_password()
opener=build_opener(auth,proxy)

也可以在urlopen中使用代理

復(fù)制代碼 代碼如下:

import urllib2 
proxy = 'http://%s:%s@%s' % ('userName', 'password', 'proxy') 
inforMation = urllib2.urlopen("http://www.example.com", proxies={'http':proxy}) 

相關(guān)文章

  • Pandas.DataFrame時間序列數(shù)據(jù)處理的實現(xiàn)

    Pandas.DataFrame時間序列數(shù)據(jù)處理的實現(xiàn)

    本文主要介紹了Pandas.DataFrame時間序列數(shù)據(jù)處理的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-02-02
  • Python 生成器,迭代,yield關(guān)鍵字,send()傳參給yield語句操作示例

    Python 生成器,迭代,yield關(guān)鍵字,send()傳參給yield語句操作示例

    這篇文章主要介紹了Python 生成器,迭代,yield關(guān)鍵字,send()傳參給yield語句操作,結(jié)合實例形式分析了Python生成器、迭代、yield關(guān)鍵字及異常處理相關(guān)操作技巧,需要的朋友可以參考下
    2019-10-10
  • Python字典和列表性能之間的比較

    Python字典和列表性能之間的比較

    今天給大家介紹的是Python列表和字典的相關(guān)知識,文中對Python字典和列表的性能作了充分的比較,好奇的小伙伴們一起來看看吧,需要的朋友可以參考下
    2021-06-06
  • 深入解析Python中的多進程

    深入解析Python中的多進程

    這篇文章主要介紹了深入解析Python中的多進程,“Python中的多進程是通過multiprocessing包來實現(xiàn)的,和多線程的threading.Thread差不多,它可以利用multiprocessing.Process對象來創(chuàng)建一個進程對象
    2022-06-06
  • 手把手教會你雙目攝像頭Matlab參數(shù)定標

    手把手教會你雙目攝像頭Matlab參數(shù)定標

    雙目標定是立體視覺系統(tǒng)中的一個關(guān)鍵步驟,下面這篇文章主要給大家介紹了關(guān)于雙目攝像頭Matlab參數(shù)定標的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-07-07
  • python中實現(xiàn)數(shù)組和列表讀取一列的方法

    python中實現(xiàn)數(shù)組和列表讀取一列的方法

    下面小編就為大家分享一篇python中實現(xiàn)數(shù)組和列表讀取一列的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04
  • TensorFlow中tf.batch_matmul()的用法

    TensorFlow中tf.batch_matmul()的用法

    這篇文章主要介紹了TensorFlow中tf.batch_matmul()的用法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • 聊聊Python中關(guān)于a=[[]]*3的反思

    聊聊Python中關(guān)于a=[[]]*3的反思

    這篇文章主要介紹了Python中關(guān)于a=[[]]*3的反思,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • Pandas中DataFrame的常用用法分享

    Pandas中DataFrame的常用用法分享

    Pandas是Python中最流行的數(shù)據(jù)分析和處理工具之一,它提供了一個名為DataFrame的數(shù)據(jù)結(jié)構(gòu),可以被認為是一個二維表格或電子表格。本文主要來和大家分享一下Pandas中DataFrame的常用用法,希望對大家有所幫助
    2023-04-04
  • Matplotlib繪圖基礎(chǔ)之配置參數(shù)詳解

    Matplotlib繪圖基礎(chǔ)之配置參數(shù)詳解

    Matplotlib?提供了大量配置參數(shù),這些參數(shù)可以但不限于讓我們從整體上調(diào)整通過?Matplotlib?繪制的圖形樣式,下面我們就來看看如何巧妙的運用這些參數(shù)吧
    2023-08-08

最新評論