Go 语言刮刀。如何抓取网站上动态生成的链接?

标签 go web web-scraping web-crawler

我正在尝试抓取产品视频链接(由另一个网络服务动态生成。位置在左侧产品图片下方)。您可以查看以下链接, https://www.tokopedia.com/chocoapple/ready-stock-bnib-iphone-128gb-7-plus-jet-black-garansi-apple-1-tahun-10?src=topads 谷歌浏览器“检查元素”显示了 div 标签。但是页面源中不存在相同的标记。 怎么做?我正在研究 goQuery 以实现该任务,但不确定它是否有效。我不是网络开发人员,所以如果我的问题描述不具体,请考虑提出建议。 谢谢。

最佳答案

如果标签不在源中,那么 GoQuery 将不起作用。 GoQuery 用于使用类似 jQuery 的 API 解析 HTML 源代码。

您需要先使用像 phantomjs 这样的 headless WebKit 处理网页,chromeless , 或 puppeteer .这些工具中的每一个都允许您在处理网页之前处理网页上的所有 Javascript。这样,将处理用于呈现您感兴趣的视频的 AJAX 并更新源。然后,您可以下载相应的源代码,其中应包含该 div。

关于Go 语言刮刀。如何抓取网站上动态生成的链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45905550/

相关文章:

json - 我被 json.marshal 困住了

go - 在 golang 中使用可变长度数组作为映射键

javascript - 试图获得特定的颜色,但我无法获得想要的结果

javascript - 使用网络音频 api 分析来自麦克风的输入(将 MediaStreamSource 转换为 BufferSource)

Python Scrapy,将多个子对象解析为同一个项目?

go - Go 语言中 html/模板的性能缓慢,有什么解决方法吗?

go - 自定义类型作为参数传递给函数

Angularjs ui-router 阻止访问非状态路由

vba - Excel VBA : auto click and open file from website

javascript - 通过特定元素名称抓取数据 - PhantomJS