如何将命令行参数传递给url字符串

时间:2018-05-17 19:43:50

标签: python sys

我有一份报告,我使用python中的请求从网址下载,如下所示:

dls = 'http://somepage/reporting?tags=name&daysback=days'
resp = requests.get(dls)

我想要的是'标记'和' daysback'在上面的url中,使用sys argv在命令行中传递参数。

例如,我想要这样的事情:

try:
     tag = sys.argv[1]
     daysback = sys.argv[2]
except IndexError:
     raise IndexError('Example/ python script.py [tag] [daysback]')

因此,如果我的代码名称为'则生成'和' daysback'例如:10岁,是

我希望网址看起来像这样:

dls = 'http://somepage/reporting?tags=produce&daysback=10'

和命令行参数为:

python script.py [produce] [10]

有谁知道我怎么做到这一点?

1 个答案:

答案 0 :(得分:3)

import sys

tag = sys.argv[1]
daysback = sys.argv[2]

url = 'http://somepage/reporting?tags=' + tag + '&daysback=' + daysback

resp = requests.get(url)

可替换地:

url = 'http://somepage/reporting?tags={}&daysback={}'.format(tag, daysback)