Python的问题在这里.我有两个文件,其中包含以下数据:hosts.txt
:
google.com
target.com
bing.com
字符串strings1.txt
:
x
y
z
型
我尝试通过阅读hosts.txt
中的主机列表,同时传入strings1.txt
中的字符串列表作为查询参数来构造URL并向其发出GET请求。然而,My Script只向hosts.txt
的第1行和strings1.txt
中的所有字符串发出请求,但随后脚本终止(参见:输出)。我如何将查询参数列表传递给第一个主机,然后使用相同的查询参数在hosts.txt
文件的第2行移动到下一个主机等等?我尝试使用next()
方法,但遇到了麻烦。任何帮助都非常感谢。谢谢。
我的剧本
with open('hosts.txt','r') as file:
with open('strings1.txt','r') as strings:
for line in file:
host = line.strip()
for string in strings:
url = f"https://{host}/?test={string}"
resp = requests.get((url)).status_code
print(f'Results for {url}\n{test}')
型
输出
Results for https://google.com/?test=x
302
Results for https://google.com/?test=y
302
Results for https://google.com/?test=z
302
[...SCRIPT TERMINATES...]
型
2条答案
按热度按时间uqzxnwby1#
string
迭代器已经耗尽了(它迭代了strings1.txt
文件中的行,所以你只能看到一次对主机的迭代)。相反,将主机/字符串读取到一个列表中,然后发出请求:字符串
印刷品:
型
hl0ma9xz2#
看起来问题与您如何在循环内从strings1.txt中阅读字符串有关。一旦到达文件的末尾,后续读取尝试将不会产生任何更多值。要为每个主机重新遍历strings1.txt的行,您需要重新打开文件或返回到开头。
字符串