【发布时间】:2015-05-21 19:21:43
【问题描述】:
我有一堆从 Selenium IDE 转换而来的 Python webdriver 运行。这些运行有 1 或 2 个设置,我希望能够使用一个配置文件来更改这些设置,该配置文件将通过运行一个脚本来创建,该脚本收集将设置这 2 个变量的用户输入。
这是我使用ConfigParser 模块的尝试:
import ConfigParser
file_path_input = raw_input("Enter path to 'webdriver' directory ex: '/home/user/': ")
print "you entered", file_path_input
url_input = raw_input("Enter url that the application will point to, ex: 172.31.13.56 or vtm55.example.com: ")
print "you entered", url_input
def createConfig(file_path_input):
"""
Create a config file
"""
config = ConfigParser.ConfigParser()
config.add_section("application_settings")
config.set("application_settings", "file_path_to_use", "file_path_input")
config.set("application_settings", "url_to_use", "url_input")
config.set("application_settings", "settings_info",
"Your application directory is in %(file_path_to_use)s and your application url is %(url_to_use)s")
with open(file_path_input, "wb") as config_file:
config.write(config_file)
raw_input() 和 print() 行有效,但配置文件似乎根本没有生成。创建文件后,我希望能够在我的各种 Python webdriver 运行中插入变量 file_path_to_use 和 url_to_use。
【问题讨论】:
-
您能添加几行打印行来显示正在执行的内容吗?特别是在
with(open)打印 file_path_input 和 config_file 变量之后?可以显示一些错误。哎呀,也许添加运行它时的所有输出。或者,从 open-file 语句中删除二进制 ('b') 标志并尝试将其写为纯文本。 -
它并没有写出你所期望的内容
标签: python file configuration configuration-files configparser