Python无法输入fieldvalue作为字符串

时间:2015-05-26 14:07:03

标签: python

尝试使用简单的对话框输入信息,但不允许我使用我在对话框中输入的fieldValue

以下错误消息:

driver.get("https://" + fieldValues + "/test/")
  

TypeError:无法连接'str'和'tuple'对象

下面的脚本:

import re
import easygui
from pprint import pprint
from selenium import webdriver
from pyvirtualdisplay import Display
from selenium.webdriver.common.keys import Keys


msg = "Please enter the server to test...",
title = "Local Server Tester ",
fieldNames = ['Server URL'],
fieldValues = [],  # we start with blanks for the values
fieldValues = easygui.multenterbox(msg,title, fieldNames),



# Get server from fieldValues
print ("Server to test", (fieldValues))


# Log into system 

driver = webdriver.Chrome()
driver.get("https://" + fieldValues + "/test")

2 个答案:

答案 0 :(得分:0)

如果您要将此tuple添加到新string,可以从中创建一个字符串:

driver.get("https://" + str(fieldValues) + "/test/")

你应该确保fieldValues的字符串表示是你真正想要的,如果没有写一个函数来解包元组并从其元素创建一个格式正确的字符串。

编辑:鉴于上下文有限,你可能正在寻找这样的东西解包元组值并用'。'分隔它们,假设fieldValues是域名的一部分:

driver.get("https://" + '.'.join(fieldValues) + "/test/")

答案 1 :(得分:0)

修改此行,它应该有效,(如果您只有一个要测试的URL)

driver.get("https://" + fieldValues[0][0]+ "/test")

你的fieldvalue看起来像这样。它是一个有单个字符串列表的元组

FieldValues= (['www.yourserver.com'],)