Python 使用按xpath查找元素时语法无效

Python 使用按xpath查找元素时语法无效,python,selenium,xpath,selenium-webdriver,Python,Selenium,Xpath,Selenium Webdriver,我试图通过xpath查找元素,但经常会出现语法错误 它将^标记放在xpath中的冒号之前 我正在Chrome开发工具中生成xpath。在html中查找元素,右键单击它并选择Copy xpath C:\>python ebcm_login.py File "ebcm_login.py", line 47 elem = driver.find_element_by_xpath("//*[@id="j_idt51:j_idt55_body"]/table/tbody/tr/td[2]

我试图通过xpath查找元素,但经常会出现语法错误

它将
^
标记放在xpath中的冒号之前

我正在Chrome开发工具中生成xpath。在html中查找元素,右键单击它并选择Copy xpath

C:\>python ebcm_login.py
  File "ebcm_login.py", line 47
    elem = driver.find_element_by_xpath("//*[@id="j_idt51:j_idt55_body"]/table/tbody/tr/td[2]/table/tbody/tr[6]/td[1]/input")
                                                        ^
SyntaxError: invalid syntax

C:\>python ebcm_login.py
  File "ebcm_login.py", line 48
    elem = driver.find_element_by_xpath("//*[@id="menuForm:j_idt57"]/table/tbody/tr/td[2]")
                                                         ^
SyntaxError: invalid syntax

C:\>python
Python 2.7.8 (default, Jun 30 2014, 16:03:49) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
试用

elem = driver.find_element_by_xpath('//[@id="j_idt51:j_idt55_body"]/table/tbody/tr/td[2]/table/tbody/tr[6]/td[1]/input')
这里有重叠的引号。你可能把它弄糊涂了。 在您的示例中,您在现有双引号内放置了双引号

例如:
“'obanawev'”
是有效的,同样
“'obanawev'”
也是有效的,但不是
“obanawev”

你甚至可以在三重引号内给出它。然后您可以使用双引号和单引号,并且可以避免引号重叠

例如:

elem = driver.find_element_by_xpath("""//[@id="j_idt51:j_idt55_body"]/table/tbody/tr/td[2]/table/tbody/tr[6]/td[1]/input""")