Python学习_Python 3.X版本导入httplib模块报ImportError解决方案

之前用Python 2.7版本的httplib做接口测试时,运行代码都是正常的,

最近开始用Python 3.3之后,再去看以前的代码,发现import httplib出现错误:Unresolved import :httplib,

运行代码时也报错:ImportError: No module named 'httplib'

查找各种资料发现原来Python 2.x中的"httplib"模块在Python 3.x中变成了"http.client",就怪之前只了解了两个版本区别是print语句输出在3.x中要加(),看来要详细了解所有区别了~

附上代码供参考,期望大家不会被这个报错坑了~

2.7版本中的代码实现:

import httplib

import urllib



reqheaders={

'MobileType':'Android',

'DeviceToken':'xxxxxxxxx',

'OSVersion':'1.0.3',

'AppVersion':'14',

'Host':'192.xxx.x.xxxx'}  



reqconn=httplib.HTTPConnection("192.xxx.x.xxxx")

reqconn.request("GET", "/Login?username=1416&password=123", None, reqheaders)

res=reqconn.getresponse()

print res.status,  res.reason

print res.msg

print res.read()

 

3.3版本中代码实现:

import http.client    #修改引用的模块

import urllib



reqheaders={

'MobileType':'Android',

'DeviceToken':'xxxxxxxxx',

'OSVersion':'1.0.3',

'AppVersion':'14',

'Host':'192.xxx.x.xxxx'}  



reqconn=http.client.HTTPConnection("192.xxx.x.xxxx")  #修改对应的方法

reqconn.request("GET", "/Login?username=1416&password=123", None, reqheaders)

res=reqconn.getresponse()

print (res.status,  res.reason)

print (res.msg)

print (res.read())

 

参考资料

 

你可能感兴趣的:(python)