处理多个用户URL输入,然后需要分别对其进行拆分和处理

时间:2018-08-04 18:42:24

标签: python python-3.x loops

我是Python的新手,所以请对我简单一点,因为这可能是我忽略的一个简单循环。本质上,我试图做的是让用户输入以逗号分隔的URLS列表,然后将这些URL单独加入API调用的结尾。当我删除一个地址的.split时,它能完美地工作,但是我很想知道如何获取它来处理多个用户输入。我尝试设置一个计数器和一个循环的上限,然后使它以这种方式工作,但无法使其正常工作。

import requests
import csv
import os

Domain = input ("Enter the URLS seperated by commas").split(',')

URL = 'https:APIcalladdresshere&' + Domain 

r = requests.get(URL)
lm = r.text
j = lm.replace(';',',')

file = open(Domain +'.csv', "w",)
file.write(j)
file.close()

file.close()
print (j)
print (URL)

1 个答案:

答案 0 :(得分:0)

很遗憾,我没有足够的声誉来发表评论,并询问您的意思是它无法正常工作(我想您是指我在下面提到的内容),但是如果您有类似以下内容的列表,域,然后寻找一个可以使您摆脱困境的特定输入(使您没有所说的上限)。像这样:

Domains = []
while True:
    domain = input ("Enter the URLS seperated by commas: (Enter 'exit' to exit)")
    if 'exit' in domain.lower():
        break
    else:
        Domains.append(domain.split(','))
Urls = []
for domain in Domains:
    URL = 'https:APIcalladdresshere&' + domain
    Urls.append(domain)    #or you could just write Urls.append('https:APIcalladdresshere&' + domain)

但是随后,行URL = 'https:APIcalladdresshere&' + Domain将引发TypeError,因为您正尝试向字符串添加列表(您将Domain转换为带有Domain.split(',')的列表) 。上面的循环可以正常工作,但是如果您坚持使用逗号分隔的网址,请尝试:

URL  = ['https:APIcalladdresshere&' + d for d in Domain]

URL现在是您可以迭代的列表。

希望这会有所帮助!