我正在尝试使用Go和Chromedp从某些网站上抓取一些信息。我当前正在使用:
err := chromedp.Run(ctx, chromedp.Navigate(url), chromedp.Evaluate(`document.body.innerHTML`, &textHTML))
拉出网站文本并进行解析。我遇到了有关URL重定向的问题,我需要知道链中的最终URL才能对照URL列表进行检查。我可以使用net/http
和CheckRedirect
将其加倍,但这似乎效率很低。有什么方法可以向Chromedp添加Action
以获得重定向链,或者至少是最终重定向URL?我当时在看NavigationEntries
,但没有看到它的示例,也不确定是否用于跟踪Navigate
的动作。
编辑:我仍然想知道是否有一种利用Chromedp内部的解决方案,但是我通过在动作中添加chromedp.Evaluate(`window.location.href`, &newURL)
来解决该问题。有没有这样的情况不能给我想要的结果?