zoukankan      html  css  js  c++  java
  • 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())

    参考资料

  • 相关阅读:
    洛谷 P1628 合并序列
    洛谷 P3378 【模板】堆
    浅谈可删除堆
    浅谈数据结构—分块
    浅谈对顶堆
    JDOJ 1929: 求最长不下降序列长度
    JDOJ 1928: 排队买票
    Leetcode(53)-最大子序和
    Leetcode(38)-报数
    Leetcode(35)-搜索插入位置
  • 原文地址:https://www.cnblogs.com/liutong3310/p/3741813.html
Copyright © 2011-2022 走看看