zoukankan      html  css  js  c++  java
  • python3 http.client 网络请求

    python3 http.client 网络请求

    一:get 请求

    '''
    Created on 2014年4月21日
    
    @author: dev.keke@gmail.com
    '''
    import http.client
    
    #简单的GET请求
    con = http.client.HTTPConnection('www.baidu.com')
    con.request("GET", "/index.html",'',{})
    resu = con.getresponse()
    print(resu.status,resu.reason,resu.info())  #打印读取到的数据
    
    #打印读取的数据
    print (resu.read())
    
    #测试一个无效的请求
    inCon = http.client.HTTPConnection('www.baidu.com')
    inCon.request('GET', 'None.html')
    resu2 = inCon.getresponse()
    print('
    ')
    print(resu2.status,resu2.msg)

    二:POST 请求

       

    import http.client,urllib.parse
    
    pararms = urllib.parse.urlencode({'@number': 12524, '@type': 'issue', '@action': 'show'})
    headers = {"Content-type": "application/x-www-form-urlencoded","Accept": "text/plain"}
    conn = http.client.HTTPConnection("bugs.python.org")
    conn.request('POST', '', pararms, headers)
    response = conn.getresponse()
    print(response.status, response.reason)
    data = response.read()
    print(data)
    
    conn.close()

       打印结果 :

      

    302 Found
    b'Redirecting to <a href="http://bugs.python.org/issue12524">http://bugs.python.org/issue12524</a>'

    三: head 请求

    >>> import http.client
    >>> conn = http.client.HTTPConnection("www.python.org")
    >>> conn.request("HEAD","/index.html")
    >>> res = conn.getresponse()
    >>> print(res.status, res.reason)
    200 OK
    >>> data = res.read()
    >>> print(len(data))
    0
    >>> data == b''
    True

    四:put 请求

    >>> # This creates an HTTP message
    >>> # with the content of BODY as the enclosed representation
    >>> # for the resource http://localhost:8080/file
    ...
    >>> import http.client
    >>> BODY = "***filecontents***"
    >>> conn = http.client.HTTPConnection("localhost", 8080)
    >>> conn.request("PUT", "/file", BODY)
    >>> response = conn.getresponse()
    >>> print(response.status, response.reason)
    200, OK

    参考:https://docs.python.org/3.4/library/http.client.html?highlight=http.client#module-http.client

  • 相关阅读:
    实现对DataGird控件的绑定操作
    EasyUI-datagrid中load,reload,loadData方法的区别
    easui Pagination Layout
    easyUI datagrid 排序
    jQuery EasyUI教程之datagrid应用
    solr入门之多线程操作solr中索引字段的解决
    序列自相关矩阵的计算和分析
    UVa 12403
    滑动窗体的最大值(STL的应用+剑指offer)
    bzoj2101【Usaco2010 Dec】Treasure Chest 藏宝箱
  • 原文地址:https://www.cnblogs.com/cocoajin/p/3679384.html
Copyright © 2011-2022 走看看