我正在尝试使用Goquery库在Golang中收集Google搜索页面的结果。为了实现这一目标,我正在用Goquery收集所有goquery选择的节点。问题在于,查找("*"(返回的选择似乎不包含HTML文档的所有节点。问题:该方法是否会用整个树结构收集所有节点?如果没有,是否有一种收集全部的方法?
我尝试使用应用于整个文档选择的Goquery Find("*"(方法。因此,尽管它们在HTML文档中,但仍未返回具有某些属性的节点。例如,未识别的节点
alltags:= doc.find("*"(//DOC是带有Google搜索的HTML Doc
选择不包含class =" srg"的DIV标签。同样适用于其他类值,例如" bkwmgd"," rc"。
这以前发生在我身上。我试图用Python美丽的汤包进行网络刮擦,并且正在发生同样的事情。
后来,事实证明,在尝试获取时,HTML标记实际上是服务器找到机器人后返回的标记。我通过将User-Agent
设置为Mozilla/5.0
。
希望这有助于您解决这个问题。您可以从更新执行的获取请求的代码开始。