Colly没有通过xpath找到body标记,而是通过选择器名称找到它



我正在使用gocolly学习网络抓取。当我尝试使用选择器名称body查找标记时,它成功地找到了它。然而,当我尝试通过xpath/html/body查找body标记时,却找不到它。

我使用了带有一个简单回调函数的OnHTML((:

collector.OnHTML("/html/body", func(element *colly.HTMLElement) {
fmt.Println("Found Body")
})

你知道为什么会发生这种事吗?

此外,在看教程时,我注意到传递到函数OnHTML((中的选择器有时被"包装"(双引号(,有时用``(反引号(。两者之间有区别吗?

我该如何搜索ID元素,因为当我试图搜索主体下的ID#布局容器时,Colly找不到它:

collector.OnHTML("#layout-container", func(element *colly.HTMLElement) { 
fmt.Println("Found Layout Container") 
})

提前感谢!

从HTML的角度来看,使用OnHTML时已经隐含了/html部分。

您将使用/html/body,如colly_test.go所示,以及OnXML(((函数将在与xpathQuery参数匹配的每个XML元素上执行(

使用OnHTML的测试仅显示";body";。

相关内容

  • 没有找到相关文章

最新更新