我试图在页面上找到一个元素,但找不到原因是什么?
package main
import (
"github.com/tebeka/selenium"
"log"
"time"
)
func main() {
caps := selenium.Capabilities{
"browserName": "chrome",
}
wd, err := selenium.NewRemote(caps, "http://localhost:4444/wd/hub")
if err != nil{
log.Fatal(err)
}
defer func() {
if err := wd.Quit(); err != nil {
log.Fatal(err)
}
}()
if err := wd.SetPageLoadTimeout(time.Second * 10); err != nil {
log.Fatal(err)
}
if err = wd.SetImplicitWaitTimeout(time.Second * 10); err != nil {
log.Fatal(err)
}
if err = wd.Get("https://www.facebook.com/ads/library/?active_status=all&ad_type=political_and_issue_ads&country=ALL&sort_data[direction]=desc&sort_data[mode]=relevancy_monthly_grouped"); err != nil {
log.Fatal(err)
}
title, err := wd.Title()
if err != nil {
log.Fatalln(err)
}
log.Println(title)
elem, err := wd.FindElement(selenium.ByXPATH, "//*[@id=\"content\"]/div/div/div[3]/div/div[4]/div")
if err != nil {
log.Fatal(err)
}
log.Println(elem.Text())
}显示一条错误消息:
no such element: no such element: Unable to locate element: {"method":"xpath","selector":"//*[@id="content"]/div/div/div[3]/div/div[4]/div"}集线器是在码头上升起的。图像https://hub.docker.com/r/selenium/standalone-chrome
发布于 2020-10-03 23:23:47
如果可以的话,尽量不要在Selenium中使用XPATH。使用.ByTag搜索它,并查找元素的唯一属性来查找它。不要依赖XPATH,类,甚至是著名网站的ID,因为它们经常改变。
在这里查看我的答案:How to click on the Ask to join button within https://meet.google.com using Selenium and Python?
https://stackoverflow.com/questions/64183202
复制相似问题