如下所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
#!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()
|
以上这篇python http基本验证方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/weixin_40584198/article/details/78206543