Как передать аргументы командной строки в строку URL - PullRequest
0 голосов
/ 17 мая 2018

У меня есть отчет, который я загружаю с URL-адреса, используя запросы в python, например:

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

Я хочу, чтобы аргументы 'tag' и 'daysback' в URL выше были переданы в качестве аргументов.в командной строке используя sys argv.

Например, я хочу что-то вроде этого:

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

Так что, если моим именем тега было «product» и «daysback» было 10, например:

Iможно ожидать, что URL будет выглядеть следующим образом:

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

и аргумент командной строки будет:

python script.py [produce] [10]

Кто-нибудь знает, как я могу это сделать?

1 Ответ

0 голосов
/ 17 мая 2018
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)
...