當前位置: 首頁>>代碼示例>>Python>>正文


Python urllib2.HTTPRedirectHandler方法代碼示例

本文整理匯總了Python中urllib2.HTTPRedirectHandler方法的典型用法代碼示例。如果您正苦於以下問題:Python urllib2.HTTPRedirectHandler方法的具體用法?Python urllib2.HTTPRedirectHandler怎麽用?Python urllib2.HTTPRedirectHandler使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在urllib2的用法示例。


在下文中一共展示了urllib2.HTTPRedirectHandler方法的8個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: probe_html5

# 需要導入模塊: import urllib2 [as 別名]
# 或者: from urllib2 import HTTPRedirectHandler [as 別名]
def probe_html5(self, result):

        class NoRedirectHandler(urllib2.HTTPRedirectHandler):

            def http_error_302(self, req, fp, code, msg, headers):
                infourl = urllib.addinfourl(fp, headers, req.get_full_url())
                infourl.status = code
                infourl.code = code
                return infourl
            http_error_300 = http_error_302
            http_error_301 = http_error_302
            http_error_303 = http_error_302
            http_error_307 = http_error_302

        opener = urllib2.build_opener(NoRedirectHandler())
        urllib2.install_opener(opener)

        r = urllib2.urlopen(urllib2.Request(result['url'], headers=result['headers']))
        if r.code == 200:
            result['url'] = r.read()
        return result 
開發者ID:kodi-czsk,項目名稱:plugin.video.sosac.ph,代碼行數:23,代碼來源:sosac.py

示例2: test_invalid_redirect

# 需要導入模塊: import urllib2 [as 別名]
# 或者: from urllib2 import HTTPRedirectHandler [as 別名]
def test_invalid_redirect(self):
        from_url = "http://example.com/a.html"
        valid_schemes = ['http', 'https', 'ftp']
        invalid_schemes = ['file', 'imap', 'ldap']
        schemeless_url = "example.com/b.html"
        h = urllib2.HTTPRedirectHandler()
        o = h.parent = MockOpener()
        req = Request(from_url)
        req.timeout = socket._GLOBAL_DEFAULT_TIMEOUT

        for scheme in invalid_schemes:
            invalid_url = scheme + '://' + schemeless_url
            self.assertRaises(urllib2.HTTPError, h.http_error_302,
                              req, MockFile(), 302, "Security Loophole",
                              MockHeaders({"location": invalid_url}))

        for scheme in valid_schemes:
            valid_url = scheme + '://' + schemeless_url
            h.http_error_302(req, MockFile(), 302, "That's fine",
                MockHeaders({"location": valid_url}))
            self.assertEqual(o.req.get_full_url(), valid_url) 
開發者ID:IronLanguages,項目名稱:ironpython2,代碼行數:23,代碼來源:test_urllib2.py

示例3: __init__

# 需要導入模塊: import urllib2 [as 別名]
# 或者: from urllib2 import HTTPRedirectHandler [as 別名]
def __init__(self, user_id='0', tv_auth_token='0'):
        '''
        Creates the TV API interface. The user identified by the supplied user
        id must have a TV profile created by a call to
        QuizduellApi.create_tv_user() and a personal TV auth token.
        
        @param user_id: Quizduell user id
        @type user_id: str
        
        @param tv_auth_token: TV auth token returned by
                              QuizduellApi.create_tv_user()
        @type tv_auth_token: str
        ''' 
        self._user_id = user_id
        self._tv_auth_token = tv_auth_token
        self._opener = urllib2.build_opener(
            urllib2.HTTPRedirectHandler(),
            urllib2.HTTPHandler(debuglevel=0),
            urllib2.HTTPSHandler(debuglevel=0)
        ) 
開發者ID:mtschirs,項目名稱:quizduellapi,代碼行數:22,代碼來源:quizduelltvapi.py

示例4: redirect_request

# 需要導入模塊: import urllib2 [as 別名]
# 或者: from urllib2 import HTTPRedirectHandler [as 別名]
def redirect_request(self, req, fp, code, msg, headers, newurl):
        newreq = urllib2.HTTPRedirectHandler.redirect_request(self, req, fp, code, msg, headers, newurl)
        print '>> REDIRECT INFO <<'
        print_response(req.get_full_url(), code, headers)
        print '>> REDIRECT HEADERS DETAILS <<'
        for header in headers.items():
            check_header(header)
        print '>> REDIRECT MISSING HEADERS <<'
        missing_headers(headers.items(), urlparse(newurl).scheme)
        return newreq 
開發者ID:riramar,項目名稱:hsecscan,代碼行數:12,代碼來源:hsecscan.py

示例5: test_cookie_redirect

# 需要導入模塊: import urllib2 [as 別名]
# 或者: from urllib2 import HTTPRedirectHandler [as 別名]
def test_cookie_redirect(self):
        # cookies shouldn't leak into redirected requests
        from cookielib import CookieJar

        from test.test_cookielib import interact_netscape

        cj = CookieJar()
        interact_netscape(cj, "http://www.example.com/", "spam=eggs")
        hh = MockHTTPHandler(302, "Location: http://www.cracker.com/\r\n\r\n")
        hdeh = urllib2.HTTPDefaultErrorHandler()
        hrh = urllib2.HTTPRedirectHandler()
        cp = urllib2.HTTPCookieProcessor(cj)
        o = build_test_opener(hh, hdeh, hrh, cp)
        o.open("http://www.example.com/")
        self.assertTrue(not hh.req.has_header("Cookie")) 
開發者ID:IronLanguages,項目名稱:ironpython2,代碼行數:17,代碼來源:test_urllib2.py

示例6: test_redirect_fragment

# 需要導入模塊: import urllib2 [as 別名]
# 或者: from urllib2 import HTTPRedirectHandler [as 別名]
def test_redirect_fragment(self):
        redirected_url = 'http://www.example.com/index.html#OK\r\n\r\n'
        hh = MockHTTPHandler(302, 'Location: ' + redirected_url)
        hdeh = urllib2.HTTPDefaultErrorHandler()
        hrh = urllib2.HTTPRedirectHandler()
        o = build_test_opener(hh, hdeh, hrh)
        fp = o.open('http://www.example.com')
        self.assertEqual(fp.geturl(), redirected_url.strip()) 
開發者ID:IronLanguages,項目名稱:ironpython2,代碼行數:10,代碼來源:test_urllib2.py

示例7: __init__

# 需要導入模塊: import urllib2 [as 別名]
# 或者: from urllib2 import HTTPRedirectHandler [as 別名]
def __init__(self, token, episode_id, filename=''):
        self.token = token
        self.episode_id = episode_id
        self.filename = filename
        if len(self.filename) > 0:
            self.action = 'episode?access_token=%s&filename=%s' % (self.token, self.filename)
        else:
            self.action = 'episode?access_token=%s&episode_id=%s' % (self.token, self.episode_id)
        

        self.cj = cookielib.CookieJar()
        self.opener = urllib2.build_opener(
           urllib2.HTTPRedirectHandler(),
           urllib2.HTTPHandler(debuglevel=0),
           urllib2.HTTPSHandler(debuglevel=0),
           urllib2.HTTPCookieProcessor(self.cj)
        )

        self.opener.addheaders = [
            ('User-agent', 'Lynx/2.8.1pre.9 libwww-FM/2.14')
        ]

        self.opener.get_method = lambda: 'GET'
        
        request_url = "%s%s" % (request_uri, self.action)
        try:
            response = self.opener.open(request_url, None)
            data = json.loads(''.join(response.readlines()))
        except:
            data = None
        
        if (data is None) or (data['result'] == "KO"):
           self.is_found = False
        else:
           self.is_found = True
           self.resultdata = data['result']
           self.showname = data['episode']['show']['name']
           self.episodename = data['episode']['name']
           self.season_number = data['episode']['season_number']
           self.number = data['episode']['number']
           self.id = data['episode']['id'] 
開發者ID:cxii-dev,項目名稱:script.tvtime,代碼行數:43,代碼來源:tvtime.py

示例8: http_error_301

# 需要導入模塊: import urllib2 [as 別名]
# 或者: from urllib2 import HTTPRedirectHandler [as 別名]
def http_error_301(self, req, fp, code, msg, hdrs):
        result = urllib2.HTTPRedirectHandler.http_error_301(self, req, fp,
                                                            code, msg, hdrs)
        result.status = code
        result.newurl = result.geturl()
        return result
    # The default implementations in urllib2.HTTPRedirectHandler
    # are identical, so hardcoding a http_error_301 call above
    # won't affect anything 
開發者ID:liantian-cn,項目名稱:RSSNewsGAE,代碼行數:11,代碼來源:feedparser.py


注:本文中的urllib2.HTTPRedirectHandler方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。