首页 > 编程语言 > 详细

python requests库中的GET方法详解

时间:2021-07-05 23:23:28      阅读:43      评论:0      收藏:0      [点我收藏+]

get方法,相对于post方法简单了很多,

大家想了解post方法一些坑和解决办法,可以点击连接:https://blog.51cto.com/13025170/2966220

想了解http协议中的一些坑和解决办法,可以点击链接:https://blog.51cto.com/13025170/2961690

想了解header中的一些坑和解决办法,可以点击连接:https://blog.51cto.com/13025170/2357193

上代码

话不多说,我们直接上代码,说明get

不带参数的

# -*- coding:utf-8 -*-
#不带参数的get

import requests
import json

host = "http://httpbin.org/"
endpoint = "get"

url = ‘‘.join([host,endpoint])
r = requests.get(url)
#response = r.json()

print type(r.text)
print (r.json)

运行结果:

{
    ‘origin‘: ‘183.14.133.88‘,
    ‘headers‘: {
        ‘Connection‘: ‘close‘,
        ‘Host‘: ‘httpbin.org‘,
        ‘Accept-Encoding‘: ‘gzip,
        deflate‘,
        ‘Accept‘: ‘*/*‘,
        ‘User-Agent‘: ‘python-requests/2.18.1‘
    },
    ‘args‘: {
        
    },
    ‘url‘: ‘http: //httpbin.org/get‘
}

带参数的

# -*- coding:utf-8 -*-

import requests
import json

host = "http://httpbin.org/get"
params = {"show_env":"1"}
r = requests.get(url=host ,params=params)

print r.url

返回结果

http://httpbin.org/get?show_env=1
{
    ‘origin‘: ‘183.14.133.88‘,
    ‘headers‘: {
        ‘X-Request-Id‘: ‘ebe922b4-c463-4fe9-9faf-49748d682fd7‘,
        ‘Accept-Encoding‘: ‘gzip,
        deflate‘,
        ‘X-Forwarded-Port‘: ‘80‘,
        ‘Total-Route-Time‘: ‘0‘,
        ‘Connection‘: ‘close‘,
        ‘Connect-Time‘: ‘0‘,
        ‘Via‘: ‘1.1vegur‘,
        ‘X-Forwarded-For‘: ‘183.14.133.88‘,
        ‘Accept‘: ‘*/*‘,
        ‘User-Agent‘: ‘python-requests/2.18.1‘,
        ‘X-Request-Start‘: ‘1504755961007‘,
        ‘Host‘: ‘httpbin.org‘,
        ‘X-Forwarded-Proto‘: ‘http‘
    },
    ‘args‘: {
        ‘show_env‘: ‘1‘
    },
    ‘url‘: ‘http: //httpbin.org/get?show_env=1‘
}

带header的

# -*- coding:utf-8 -*-

import requests
import json

host = "http://httpbin.org/get"
header = {"User-Agent":"test request headers"}

r = requests.get(host ,headers=header )
#response = r.json()
print (r.json()[‘headers‘][‘User-Agent‘])

返回结果

test request headers

带参数又带header的

# -*- coding:utf-8 -*-
import requests
import json

host = "http://httpbin.org/get"
headers = {"User-Agent":"test request headers"}
params = {"show_env":"1"}
r = requests.get(host ,headers=headers,params=params)

print (r.json()[‘headers‘][‘User-Agent‘])
print r.url

返回结果

test request headers
http://httpbin.org/get?show_env=1

大家从结果中能看出来,get方法的返回信息和post方法是一样的,因为在返回数据类型和返回内容的函数中,post和get方法是共用同一的函数,比如post的返回有json函数,get的返回也有json函数

这里注意的地方是:

1、get方法的数据体,用的参数名称是:params

2、post方法的数据体,用的参数名称是:data

3、post和get方法都需要header,使用方法是一样的

?

python requests库中的GET方法详解

原文:https://blog.51cto.com/u_13025170/2984537

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!