怎么在python中实现http验证?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
如下所示:
#!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主要应用于:1、Web开发;2、数据科学研究;3、网络爬虫;4、嵌入式应用开发;5、游戏开发;6、桌面应用开发。
看完上述内容,你们掌握怎么在python中实现http验证的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。