Chrome控制台:导航到网页并在加载后单击按钮

时间:2018-09-26 17:04:10

标签: javascript google-chrome-devtools

我可以在Chrome控制台中编写Javascript,该Javascript导航到任意URL并加载它。

我还可以使用setTimeout等待5000毫秒,然后再单击一个按钮。

但是我不能将这两件事放在一起以单击执行时尚未加载的页面上的按钮。

// Test for page-to-page navigation
this.document.location = "https://www.someform.com";

setTimeout( function() {
document.querySelector('body > div.container > form > input:nth-child(2)').click()
}, 5000);

我看到了it can be done with Chrome extensions,但是我需要通过Chrome控制台(和其他浏览器控制台,因为我浏览的页面限制了我使用的浏览器)来执行此操作。

我已经编写了许多使用NightmareJS包完成此任务的NodeJS脚本,但是它使用的是Electron浏览器,当我需要使用Internet Explorer或其他浏览器进行测试时,这不是很好。

1 个答案:

答案 0 :(得分:0)

仅间隔运行代码,然后在尝试单击按钮之前检查按钮是否存在?

setInterval(() => {
  const button = 
      document.querySelector('body > div.container > form > input:nth-child(2)');
  if (button) {
    button.click();
  }
}, 5000);