`
kanpiaoxue
  • 浏览: 1777982 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

使用python自带的http模块(urllib2)发送POST请求

 
阅读更多

 

python的requests的package非常好用,但是它必须预装。遇到无法预装的情况如何处理?可以使用python自带的package来处理http请求。

 

import logging
import json
import urllib2

logging.basicConfig(level=logging.DEBUG, format='%(asctime)s [PID:%(process)d] %(levelname)s --> %(message)s')
logger = logging.getLogger(__name__)

def post_cluster():
    
    api_url = 'http://localhost:8080/hello'
    api_token = 'hello-token'

    logger.info('url:%s,api_token:%s', api_url, api_token)

    json_obj = {}
    json_obj['cluster_name'] = 'cluster_name'
    json_obj['host'] = '127.0.0.1'
    json_obj['port'] = 8080

    headers = {'Content-Type': 'application/json', 'authToken': api_token}
    data = json.dumps(json_obj)
    logger.info('data:%s', data)
    req = urllib2.Request(api_url, data, headers=headers)
    response = urllib2.urlopen(req)
    rs = response.read().decode()
    print rs
    result_obj = json.loads(rs)
    if 0 == result_obj['status']:
        logger.info('successfully!')
    else:
        logger.error('failed! ' + result_obj['errorMessage'])
    pass

 

 

分享到:
评论

相关推荐

    Python3.6通过自带的urllib通过get或post方法请求url的实例

    Python作为一门高级编程语言,为开发者提供了丰富的网络请求库,其中urllib是Python标准库中用于处理URLs的模块,它为网络请求提供了很多支持,包括发送GET和POST请求等。Python 3.6版本自带的urllib库包含了多个子...

    python自带的url处理库 文档

    ### Python 自带的 URL 处理库:urllib3 #### 概述 `urllib3` 是一个在 Python 中非常流行的 HTTP 客户端库,它被设计为高效、可扩展并且易于使用的网络请求处理工具。该文档详细介绍了如何使用 `urllib3` 来发送 ...

    爬虫库(urllib,request).docx

    首先,`urllib`是Python自带的一个网络请求模块,它提供了多种HTTP请求方法。在示例中,`urllib.request`被用来执行GET和POST请求。 1. GET请求: ```python response = urllib.request.urlopen('...

    Python手机号码归属地查询代码

    在本例中,我们用urllib的urlencode函数将数据编码为适合HTTP POST请求的格式。然后,使用urllib2的Request对象创建一个请求,指定URL和POST数据。最后,通过urllib2的urlopen函数发送请求并获取服务器响应。 ...

    Python入门网络爬虫之精华版

    首先,Python中自带urllib及urllib2这两个模块,基本上能满足一般的页面抓取。另外,requests也是非常有用的包,与此类似的,还有httplib2等等。 Requests: import requests response = requests.get(url) ...

    基于Python爬虫原理的篮球鞋选择程序的设计与实现.pdf

    相比于 Python 自带的 urllib 模块,Requests 更加简洁易用。通过 Requests 库,我们可以轻松发起 GET、POST 等类型的 HTTP 请求,获取响应数据,并对其进行处理。 使用 Requests 发起请求的基本流程如下: 1. **...

    python爬虫抓取网页数据.docx

    - **urllib**:这是Python的标准库之一,包含了多个模块,用于处理URLs、发送网络请求等。虽然相比`requests`来说较为复杂,但在某些特定场景下仍然具有优势。 ##### 2. **解析库** - **BeautifulSoup**:这是一个...

    Python库 | Urls34-0.0.1-py3-none-any.whl

    在Python中,有一些知名的URL处理库,如`urllib`(Python自带的标准库)、`requests`(第三方库,广泛用于网络请求)以及`BeautifulSoup`(用于网页抓取)。如果"Urls34"库能提供独特的功能或者更好的性能,那么它...

    Python爬虫工程师面试问题总结

    9. **urllib与urllib2的区别**:urllib是Python标准库的一部分,urllib2是urllib的扩展,增加了如POST请求、错误处理等功能。Python 3中,urllib被整合成一个模块urllib.request。 10. **基于session登录验证的爬虫...

    HikLoad_hikvisiondvr_

    这通常涉及发送特定的HTTP GET或POST请求,请求中包含时间戳和其他相关元数据。 5. **文件下载**:一旦DVR设备返回录像的URL或者直接提供录像数据,脚本将开始下载过程。Python的urllib或requests库可以用于处理...

    python实现在线翻译功能

    之后,通过`urllib.request.urlopen`发送POST请求到指定URL,获取响应数据,解码并解析返回的JSON结果。最后,从解析后的结果中提取翻译后的文本并返回。 示例代码: ```python import urllib.parse import ...

    python+unittest+requests实现接口自动化的方法

    相比于Python标准库中的`urllib2`模块,Requests不仅提供了更为现代化的API,还简化了许多繁琐的操作,使得开发者能够更加专注于业务逻辑而不是底层细节处理。 - **优点**: - **易于使用**: Requests的设计理念...

    Python3.6实现带有简单界面的有道翻译小程序

    - **核心函数**:`translate(content)`,此函数接收待翻译的文本作为参数,通过向有道翻译API发送POST请求并处理响应数据来完成翻译任务。 - **URL构造**:构建请求URL,包括必要的查询参数。 - **设置头部信息**:...

    python实现自动登录人人网并采集信息的方法

    如果使用的是Python 3.x,则`urllib2`已被拆分为多个模块,例如`urllib.request`和`urllib.parse`等。 #### 二、代码解析 接下来,我们逐步分析给出的代码片段: ```python import sys import re import urllib2 ...

Global site tag (gtag.js) - Google Analytics