2016-07-14 61 views
1

我该如何开始使用javascript(opener via npm)打开新的Google Chrome窗口,然后在该新打开的窗口上填写表单?打开新窗口并在该新widnow上运行javascript

目前,我有:

// 2 arrays for storing account creation info 
var opener = require('opener') 
var newWindow = opener('URL HERE') 

我将如何去连接到新的窗口,并在其上运行代码来填写表格?我正在Mac终端中通过节点运行JavaScript代码。

任何帮助,将不胜感激。

+0

看一看硒nightwatch - http://nightwatchjs.org/ –

回答

0

要做到这一点,您必须设计您的表格,并将其托管在开启者实际可以访问的地方。我之前没有使用过opener,但是从我看到的工作就是在新的浏览器进程中打开您传递的url作为参数。而已。

设计和处理表单的提交取决于您。没有魔法。没有捷径。

0

您可以将硒用于浏览器自动化。这里是一个硒的文档的链接。 http://seleniumhq.github.io/selenium/docs/api/javascript/index.html

这里是硒解决您的问题代码

var webdriver = require('selenium-webdriver'), 
    By = require('selenium-webdriver').By, 
    until = require('selenium-webdriver').until; 

var driver = new webdriver.Builder() 
    .forBrowser('chrome') 
    .build(); 

driver.get('url to form'); 
var form = driver.findElement(By.css('form')); 
var element = form.findElement(By.css('input[type=file]')); 
element.sendKeys('/path/to/file.txt'); 
form.submit(); 
driver.quit();