gpt4 book ai didi

grails - HTTPBuilder 在 Javascript 执行后获取

转载 作者:行者123 更新时间:2023-12-02 14:42:46 26 4
gpt4 key购买 nike

我一直在使用HTTPBuilder作为获取站点 HTML 内容的一种方式。例如,这就是我使用它的方式:

def http = new HTTPBuilder(url)

def root = http.get([:])

// Really just the standard approach.

现在这对于静态 HTML 站点非常有效,但是我现在尝试从加载时执行 Javascript 的站点获取数据,这些站点填充页面。例如 this page .

我的问题是,在返回 HTML 内容之前,Grails/Groovy 是否有一种本地方式来等待所有 Javascript 执行完毕。如果不是本地的,那么第三方?

我已经尝试过的研究
  • 我看过试图模拟浏览器的库。我想如果我能让库执行 Javascript 并只返回结果,我就可以模仿我想要的行为。我对此的研究有些有限,因为我发现的库只能让您控制诸如 User-Agent 之类的东西。 .
  • 最佳答案

    您使用的方法仅从服务器获取原始 HTML 内容。因此,无需下载或执行任何代码。 Selenium 可能会起作用(或 Geb,一个围绕它的 Groovy 包装器),但是 getPageSource method表示在 JavaScript 后获取 HTML 内容取决于驱动程序。您可能会发现其中一个驱动程序(chrome、firefox 等)确实会在 JavaScript 之后返回结果。如果这不起作用,请尝试使用 PhantomJS (blog post on what you want)。

    关于grails - HTTPBuilder 在 Javascript 执行后获取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25839343/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com