如何嵌入"输入(id)"使用Python进入GET请求中的URL?

时间:2014-12-18 14:42:10

标签: python http input get

我只是Python的初学者。请帮我解决这个问题:

我有API文档(服务器允许的方法): GET http://view.example.com/candidates/显示了一个 id =的候选人。返回200

我写了这样的代码:

import requests

url = 'http://view.example.com/candidates/4'
r = requests.get(url)
print r

但我现在想如何通过“input()”内置函数放置候选者的id,而不是将其包含在URL中。

我努力做到这一点:

import requests
cand_id = input('Please, type id of askable candidate: ')
url = ('http://view.example.com/candidates' + 'cand_id')
r = requests.get(url)
print r
dir(r)
r.content

但它不起作用......

2 个答案:

答案 0 :(得分:3)

您正在使用字符串'cand_id'而不是变量cand_id。该字符串会创建一个'http://view.example.com/candidatescand_id'

的网址

答案 1 :(得分:2)

您可以这样做来构建网址:

url = 'http://view.example.com/candidates'
params = { 'cand_id': 4 }
requests.get(url, params=params)

结果:http://view.example.com/candidates?cand_id=4

-

或者,如果您想构建与帖子中提到的相同的网址:

url = 'http://view.example.com/candidates'
cand_id = input("Enter a candidate id: ")
new_url = "{}/{}".format(url, cand_id)

结果:http://view.example.com/candidates/4