日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

php小編小新在這里為大家介紹一種方法,可以通過網(wǎng)頁抓取訪問動(dòng)態(tài)HTML元素。當(dāng)我們在進(jìn)行網(wǎng)頁抓取時(shí),有時(shí)會(huì)遇到一些動(dòng)態(tài)生成的內(nèi)容,這些內(nèi)容在網(wǎng)頁加載完成之前無法直接獲取。幸運(yùn)的是,我們可以利用一些工具和技術(shù)來解決這個(gè)問題。本文將介紹一種基于PHP的方法,使用它可以輕松地抓取訪問動(dòng)態(tài)HTML元素。讓我們一起來看看吧!

問題內(nèi)容

我正在使用 go-rod 進(jìn)行網(wǎng)頁抓取。我想訪問動(dòng)態(tài) 內(nèi)的鏈接。
為了使這個(gè) a 可見,我必須完成一個(gè)搜索器,它是一個(gè) input ,具有下一個(gè)格式(沒有 submit):

     

登錄后復(fù)制

所以,當(dāng)我完成后,出現(xiàn)我要訪問的a

到這里,一切都還好。這是我用來完成搜索器的代碼:

//page's url
page := rod.new().mustconnect().mustpage("https://www.sofascore.com/")

//acept cookies alert
page.mustelement("cookiesalertselector...").mustclick()

//completes the searcher
el := page.mustelement(`searcherselector...`)
el.mustinput("lionel messi")

登錄后復(fù)制

現(xiàn)在問題出現(xiàn)了,當(dāng)我想點(diǎn)擊完成搜索后顯示的a時(shí)。

我嘗試過這個(gè):

diviwant := page.mustelement("aselector...")
diviwant.mustclick()

登錄后復(fù)制

還有這個(gè):

diviwant := page.mustelement("aselector...").mustwaitvisible()
diviwant.mustclick()

登錄后復(fù)制

但是,它們都返回給我相同的錯(cuò)誤:

panic: {-32000 node is detached from document }
goroutine 1 [running]:
github.com/go-rod/rod/lib/utils.glob..func2({0x100742dc0?,
0x140002bad50?})
/users/lucastomicbenitez/go/pkg/mod/github.com/go-rod/[email protected]/lib/utils/utils.go:65
+0x24 github.com/go-rod/rod.gene.func1({0x14000281ca0?, 0x1003a98b7?, 0x4?})
/users/lucastomicbenitez/go/pkg/mod/github.com/go-rod/[email protected]/must.go:36
+0x64 github.com/go-rod/rod.(*element).mustclick(0x14000289320)   /users/lucastomicbenitez/go/pkg/mod/github.com/go-rod/[email protected]/must.go:729
+0x9c main.main()     /users/lucastomicbenitez/development/golang/evolutionaryalgorithm/main/main.go:22
+0x9c exit status 2

登錄后復(fù)制

所以,在尋找一些解決方案時(shí),我發(fā)現(xiàn)了這個(gè) github 問題并嘗試通過此方法獲取鏈接:

link := page.musteval(`()=> document.queryselector('aselector...').href`)

登錄后復(fù)制

但它返回這個(gè):

panic: eval js error: TypeError: Cannot read properties of null
(reading 'href')

登錄后復(fù)制

但是,我很確定選擇器是正確的。
我做錯(cuò)了什么?

解決方法

正如@hymns for disco在評(píng)論中所說,我只需要在搜索器完成后等待一段時(shí)間即可。

el.MustInput("Lionel Messi")

time.Sleep(time.Second)

link := page.MustEval(`()=> document.querySelector('aSelector...').href`)

登錄后復(fù)制

分享到:
標(biāo)簽:HTML元素
用戶無頭像

網(wǎng)友整理

注冊時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評(píng)定2018-06-03

通用課目體育訓(xùn)練成績評(píng)定