解析ini文件中的错误值时,如何解析username from username=字段而不是值?你知道吗
1)Ini文件,用预定义的预设值存储,我需要用python读取
$ cat /var/tmp/file.ini
banner=QUESTIONS sentence
network=lan
programming=pytohn
url=http\://pbx/register?username=E300B1&password=1234&option=localip&localip=
username=E300B1
password=1234
server=pbx
2)代码:我尝试的用户名/密码字段似乎有误
import re,os, time, socket, datetime, threading, subprocess, logging, gtk, gobject
logging.basicConfig(filename='/var/tmp/log.log',level=logging.DEBUG)
def readini(findme):
f = open('/var/tmp/file.ini', "r")
for line in f:
if line:
if findme in line:
r= line.split("=")
return r[1].replace("\\n", "").rstrip()
host = readini("server")
username = preadini("username")
password = readini("password")
command = """curl 'http://%s/a/b?username=%s&password=%s&language=EN'""" % (host, username, password)
logging.debug( command )
os.system( command )
3)输出(错误):
DEBUG:root:curl 'http://192.168.1.10/a/b?username=http\://pbx/register?username&password=http\://pbx/register?username&language=EN'
4)预期产量为:
DEBUG:root:curl 'http://192.168.1.10/a/b?username=E300B1&password=1234&language=EN'
问题是您的条件
if findme in line
不适用于您的文件。在您的文件中,字符串“username”位于定义url的行中,这就是您看到输出的原因更好的方法是:
使用可选的int-arg分割可以保证返回的列表长度为2,并且它实际上是该行定义的key,val对
相关问题 更多 >
编程相关推荐