【问题标题】:Programatically evaluate client-side JavaScript that edits DOM without a browser以编程方式评估无需浏览器即可编辑 DOM 的客户端 JavaScript
【发布时间】:2020-09-08 09:41:32
【问题描述】:

我想知道是否可以这样做:

  1. 请求我正在抓取的网站。
  2. 该站点具有客户端和可能的服务器端 javascript,用于发出请求和编辑 DOM。

例如。

window.addEventListener('DOMContentLoaded', function() {        
(function(){
  $(function(){
    $(atob('BASE64 HERE'))
        .append(
            $(atob('BASE64 HERE'))
            .val('VALUE TO ADD INTO ELEMENT')
         );
    });
  })(jQuery);
});
  1. 是否可以在不加载任何类型的无头/有头浏览器的情况下运行此代码?

我在 NodeJS 中运行。

【问题讨论】:

  • 也许 jsdom 如果您不深切关心这些脚本及其作用,即加载加载其他脚本然后变异 DOM 的脚本
  • @Aivaras 这正是我所需要的。非常感谢!

标签: javascript jquery node.js dom bots


【解决方案1】:

感谢对我的帖子的评论 @Aivaras 帮助我找到了 jsdom,这正是我所需要的。

通过“危险地”运行脚本,我可以在页面上运行任何 dom 编辑脚本,而无需打开任何无头浏览器(例如 Puppeteer)。

【讨论】:

    猜你喜欢
    • 2011-10-01
    • 2015-08-09
    • 1970-01-01
    • 2013-04-10
    • 2017-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多