python http基本验证方法

yipeiwu_com6年前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 subprocess.Popen子进程管道阻塞详解

问题产生描述 使用子进程处理一个大的日志文件,并对文件进行分析查询,需要等待子进程执行的输出结果,进行下一步处理。 出问题的代码 # 启用子进程执行外部shell命令 def __s...

Python语言异常处理测试过程解析

这篇文章主要介绍了Python语言异常处理测试过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 (一)异常处理 1.捕获所有异...

Python random模块(获取随机数)常用方法和使用例子

random.randomrandom.random()用于生成一个0到1的随机符点数: 0 <= n < 1.0 random.uniformrandom.uniform(...

Python3操作SQL Server数据库(实例讲解)

Python3操作SQL Server数据库(实例讲解)

1.前言 前面学完了SQL Server的基本语法,接下来学习如何在程序中使用sql,毕竟不能在程序中使用的话,实用性就不那么大了。 2.最基本的SQL查询语句 python是使用pym...

PyCharm鼠标右键不显示Run unittest的解决方法

PyCharm是一个用来写python代码的IDE,很好用。在其中建立了unittest类后,鼠标点击某个test方法后,菜单中会显示Run unittest方法。 问题描述 今天发现一...