python http基本验证方法

yipeiwu_com5年前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中expandtabs()方法的使用

 expandtabs()方法返回制表符,即该字符串的一个副本。 '\t'已经使用的空间,可选择使用给定的tabsize(默认8)扩展。 语法 以下是expandtabs()方...

简单的python后台管理程序

简单的python后台管理程序

一、作业需求   二、流程图 三、源码与具体思路 import shutil import os import sys USER_LOGIN = {'is_lo...

Python tkinter三种布局实例详解

Python tkinter三种布局实例详解

这篇文章主要介绍了Python tkinter三种布局实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一、pack布局举例...

Python学习教程之常用的内置函数大全

前言 内置函数,一般都是因为使用比较频繁或是元操作,所以通过内置函数的形式提供出来。在Python中,python给我们提供了很多已经定义好的函数,这里列出常用的内置函数,分享出来供大家...

python中lambda()的用法

在C++11和C#中都有匿名函数的存在。下面看看在python中匿名函数的使用。 1.lambda只是一个表达式,函数体比def简单很多。 2.lambda的主体是一个表达式,而不是一个...