python http基本验证方法

yipeiwu_com7年前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()

以上这篇python http基本验证方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python二进制读写及特殊码同步实现详解

python对二进制文件的操作需要使用bytes类,直接写入整数是不行的,如果试图使用f.write(123)向文件中以二进制写入123,结果提示参数不是bytes类型。 impor...

利用python、tensorflow、opencv、pyqt5实现人脸实时签到系统

利用python、tensorflow、opencv、pyqt5实现人脸实时签到系统

基于python opencv人脸识别的签到系统前言先看下效果实现的功能开始准备页面的构建功能实现代码部分总结 前言 一个基于opencv人脸识别和TensorFlow进行模型训练的人脸...

TensorFlow数据输入的方法示例

TensorFlow数据输入的方法示例

读取数据(Reading data) TensorFlow输入数据的方式有四种: tf.data API:可以很容易的构建一个复杂的输入通道(pipeline)(首选数据输入方式...

django foreignkey(外键)的实现

django foreignkey(外键)的实现

foreignkey是一种关联字段,将两张表进行关联的方式,我们在dodels.py里写入要生成的两张表: class Usergroup(models.Model): uid...

python实现列表中由数值查到索引的方法

python实现列表中由数值查到索引的方法

如下所示: 以上这篇python实现列表中由数值查到索引的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。...