开发者社区> 问答> 正文

读取txt文件并在url中作为变量传递

python小能手 2019-02-28 13:45:10 502

我试图完成一项任务。任务是以下我需要读取一个名为“ip.txt”的文件并逐行读取该文件,并使用urlopen将txt文件行传递给URL。

from urllib.request import urlopen

def send_alert():

from smtplib import SMTP
from email.mime.text import MIMEText

msg = MIMEText('nuf said')
msg['Subject'] = 'inventi.lt is unreachable'
msg['From'] = 'XXX@xxxx.com'
msg['To'] = 'jnin@xxxx.com'

server = SMTP('mail.xxxxxx.com:2525')
server.ehlo()
server.starttls()
server.login('jnin@xxxxx.com', 'password')
server.sendmail('jnin@xxxx.com', ['jnin@xxx.com'], msg.as_string())
server.quit()
LEER FILE

ip_dirreciones = open("ip.txt", "r")

try:

urlopen ('http://VARIABLE-HERE/cgi-bin/api-sys_operation?passcode=2000&request=REBOOT')

print ("OK")

except:

send_alert()

我们的想法是脚本将自动运行文本文件中的每一行

样品

http://1.1.1.1/cgi-bin/api-sys_operation?passcode=2000&request=REBOOT
http://1.1.1.3/cgi-bin/api-sys_operation?passcode=2000&request=REBOOT
http://1.1.1.2/cgi-bin/api-sys_operation?passcode=2000&request=REBOOT

分享到
取消 提交回答
全部回答(1)
  • python小能手
    2019-07-17 23:29:43

    你从这样的文件中读取:

    with open('ip.txt', 'r') as file:

    link_list = file.readlines()

    这将创建一个列表,其中.txt文件的每一行都转换为列表中的项目。然后,您可以遍历此列表以依次使用每个项目!

    如果你的问题是关于组合字符串来制作链接(如.txt文件中包含:

    1.1.1.1
    1.1.1.2
    1.1.1.3)
    然后你会说:

    for link in link_list:

    urlopen ('http://{}/cgi-bin/api-sys_operation?passcode=2000&request=REBOOT'.format(link))

    这将动态填充{}与link迭代无关的内容

    0 0
+ 订阅

时时分享云计算技术内容,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

推荐文章