我一直在互联网上寻找存储和回调Tkinter用户输入作为变量的方法(在Selenium中)。我读过有关Pickle和JSON转储但似乎没什么用。
top = Tk()
L1 = Label(top, text="Auto-Connect",).grid(row=0,column=1)
L2 = Label(top, text="EMAIL",).grid(row=1,column=0)
L3 = Label(top, text="PASSWORD",).grid(row=2,column=0)
L4 = Label(top, text="URL",).grid(row=3,column=0)
E1 = Entry(top, bd =5)
E1.grid(row=1,column=1)
E2 = Entry(top, bd =5)
E2.grid(row=2,column=1)
E3 = Entry(top, bd =5)
E3.grid(row=3,column=1)
我要做的就是从用户界面在Selenium脚本中设置变量。如果在我道歉之前已经问过这个......我保证我整天都在寻找。
答案 0 :(得分:2)
我假设你想要从条目小部件获取输入并在你的selenium脚本中使用它。这实际上非常简单。
下面我创建了一个mini ui来做这个
CODE:
from tkinter import *
def storeVar():
AutoConnect = E1.get()
Email = E2.get()
Password = E3.get()
Url = E4.get()
global variables
variables = [AutoConnect, Email, Password, Url]
root = Tk()
L1 = Label(root, text="Auto-Connect",).grid(row=0,column=0)
L2 = Label(root, text="EMAIL",).grid(row=1,column=0)
L3 = Label(root, text="PASSWORD",).grid(row=2,column=0)
L4 = Label(root, text="URL",).grid(row=3,column=0)
E1 = Entry(root, bd =5)
E1.grid(row=0,column=1)
E2 = Entry(root, bd =5)
E2.grid(row=1,column=1)
E3 = Entry(root, bd =5)
E3.grid(row=2,column=1)
E4 = Entry(root, bd =5)
E4.grid(row=3,column=1)
submit = Button(root, text= "Submit", command = storeVar)
submit.grid(row=4)
root.mainloop()
这是一个截屏: UI screenshot
现在要在你的selenium脚本中访问这些变量,你必须导入包含变量的列表,所以在我的例子中:
说我将上面的代码保存在一个名为ui.py的脚本中 在selenium脚本中我会写:
from ui import variables
print(variables)
变量是包含要使用的varibales的列表
随时问我任何你不明白的事情。