Python循环获取请求

问题描述 投票:1回答:2

我正在读入python的文本文件中有一个用户列表,[john, mary, bob, alice]我试图对应用程序进行API调用,以获取有关该应用程序中的用户个人资料的信息。我可以使用python请求发出请求,请求网址如下所示:

url = https://my-application.com/api/v1/users/john

我可以成功进行单个API调用,但我想使用python遍历我的用户列表。所以问题是,如何使用循环获取请求URL来替换每个用户的名称。我正在猜测使用for循环,例如:

url = https://my-application.com/api/v1/users/%s.
for i in userlist:
   return url + str[i]

这对我来说意义不大,因为我无法正常工作。任何帮助表示赞赏。

谢谢

python python-3.x for-loop okta okta-api
2个回答
1
投票

假设您正在使用python 3.x,类似这样的方法应该起作用:

for username in ['john', 'mary', 'bob', 'alice']:
    url = f'https://my-application.com/api/v1/users/{username}'
    print(username)

只需将打印内容替换为您的呼叫和处理。


1
投票

使用requests包详细说明Paul的答案(它将极大地简化您的代码):

# Importing requests package
import requests    

# Looping over users
for username in ['john', 'mary', 'bob', 'alice']:

    # Creating URL String with username
    urlString = "https://my-application.com/api/v1/users/{}".format(username)

    # New get request
    r = requests.get(urlString)

    # Do something with the response, depending on what it is
    print(r.text()) # Print Text response
    print(r.json()) # Print JSON response

如果您在GET请求中使用参数或发出POST请求,则代码非常相似。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.