簡體   English   中英

XPath是正確的,但找不到Web元素

[英]XPath is correct but doesn't find the web element

我是Python和編碼的新手。 我試圖在browser.find_element_by_xpath()內部以外部值的形式傳遞XPath。 我已經在瀏覽器控制台中使用了XPath,它是正確的,我還在各個地方都使用了time.sleep()來加載網頁,但出現錯誤。 我的問題是,甚至可以用此代碼找到元素嗎?

a=input()
b = a.split(",")

for i in range(len(b)):

    c = ("""'//a[@title="{}"]'""".format(b[i]));time.sleep(1)
    print(c)
    print(type(c))
    act1 = browser.find_element_by_xpath(c)

錯誤信息:

FLQV-7734

'// a [@ title =“ FFLQV-7734”]'

selenium.common.exceptions.InvalidSelectorException:消息:無效選擇器:由於以下錯誤,無法使用xpath表達式'// a [@ title =“ FFLQV-7734”]'定位元素:TypeError:無法執行'evaluate 'on'Document':結果不是節點集,因此無法轉換為所需的類型。 (會話信息:chrome = 72.0.3626.81)(驅動程序信息:chromedriver = 73.0.3683.68(47787ec04b6e38e22703e856e101e840b65afe72),平台= Windows NT 10.0.14393 x86_64)

例外是告訴您XPath無效。 我懷疑這是您的xpath周圍多余的單引號:

"""'//a[@title="{}"]'"""
   ^                ^

這可能應該工作:

"""//a[@title="{}"]"""

編寫最后一行代碼:

c = ("""//a[@title="{}"]""".format(b[i]));time.sleep(1)

//字符之前和/之后以及在[ ]字符后都沒有單引號。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM