python request实现http get请求curl -u 用户名:密码 url -X GET
- 一、curl get请求命令
- 二、requests.get(url,params=None,**kwargs)
- 三、request的Response对象
- 四、python代码实现http get请求curl -u 用户名:密码 url -X get
一、curl get请求命令
把下面这条curl get请求命令用python代码实现
- curl -u debezium:4a3s4d02234h http://p-awsbj-sas-hadoop-debezium-001.mynextev.net:8083/connectors -X GET
执行上面这条curl get请求命令输出如下所示: - [“mysql-unified_view_test-connector11”,“mysql-uds_prod-connector2”,“mysql-uds_prod-connector”,“mysql-unified_view_test-connector1”]
二、requests.get(url,params=None,**kwargs)
- 获取HTML网页的主要方法,对应于HTTP的GET
- requests.get(url,params=None,**kwargs)
- url:获取页面的url链接
- params:url中的额外参数,字典或字节流格式,可选
- **kwargs:12个控制访问的参数
- 最通常的方法是通过r=request.get(url)构造一个向服务器请求资源的url对象
- r返回的是一个包含服务器资源的Response对象。包含从服务器返回的所有的相关资源。
- url是通过http协议存取资源的一个路径,类似电脑中文件路径一样
三、request的Response对象
- r.status_code:HTTP请求的返回状态,200表示连接成功,404表示失败
- r.text:HTTP响应内容的字符串形式,即url对应的页面内容
- r.encoding:从HTTP header中猜测的响应内容编码方式
- r.apparent_encoding:从内容中分析出的响应内容编码方式
- r.content:HTTP响应内容的二进制形式
四、python代码实现http get请求curl -u 用户名:密码 url -X get
#curl -u debezium:4a3s4d02234h http://p-awsbj-sas-hadoop-debezium-001.mynextev.net:8083/connectors -X GET
import requests
s = requests.session()
s.auth = ('debezium','4a3s4d02234h')
url = 'http://p-awsbj-sas-hadoop-debezium-001.mynextev.net:8083/connectors'
# s = json.dumps({'key1': 'value1', 'key2': 'value2'})
# r = requests.post(url, data=s)
# print(r.text)
r = s.get(url)
#打印response
print(r)
#获取状态码
print(r.status_code)
#获取请求的数据
data = r.json()
print(data)
#获取请求内容
text = r.text
print(text)
输出如下所示:
<Response [200]>
200
[‘mysql-unified_view_test-connector11’, ‘mysql-uds_prod-connector2’, ‘mysql-uds_prod-connector3’, ‘mysql-uds_prod-connector4’, ‘mysql-uds_prod-connector’, ‘mysql-unified_view_test-connector1’]
[“mysql-unified_view_test-connector11”,“mysql-uds_prod-connector2”,“mysql-uds_prod-connector3”,“mysql-uds_prod-connector4”,“mysql-uds_prod-connector”,“mysql-unified_view_test-connector1”]