当前位置:主页 > 软件编程 > Python代码 >

python http基本验证方法

时间:2021-03-30 09:07:22 | 栏目:Python代码 | 点击:

如下所示:

#!usr/bin/env python
# -*- coding: utf-8 -*-
import urllib2
 
LOGIN = ""
PASSWORD = ""
URL = ""
REALM = "Secure Archive"
 
def handler_version(url):
 from urlparse import urlparse#urlparse用来将url拆成各个部分scheme netloc path params query fragment
 hdlr = urllib2.HTTPBasicAuthHandler()#http验证类 里面有用户名和密码
 hdlr.add_password(REALM, urlparse(url)[1], LOGIN, PASSWORD)#将url 用户名 密码添加进去
 opener = urllib2.build_opener(hdlr)#urlopen不支持验证等高级功能 所以自定义opener
 urllib2.install_opener(opener)#建立url开启器
 return url
 
def request_version(url):
 from base64 import encodestring#编码
 req = urllib2.Request(url)#开始请求页面
 b64str = encodestring('%s:%s' % (LOGIN, PASSWORD))[:-1]#将sting转换成base64-data形式 base64为一种形式的二进制编码
 req.add_header("Authorization", "Basic %s" % b64str)#添加header标头
 return req
 
for funcType in ('handler', 'request'):
 print '***Using %s:' % funcType.upper()
 url = eval('%s_version' % funcType)(URL)#eval 将字符串转换成有效的表达式并返回结果
 f = urllib2.urlopen(url)
 print f.readline()
 f.close()

您可能感兴趣的文章:

相关文章