无法从casperjs中的命令行填写登录凭据

时间:2015-06-10 05:15:48

标签: phantomjs casperjs

我是casperjs的新手,我正在尝试登录我们的公司网站。 这就是我在命令行上运行的内容:

casperjs someJob.js --username=My_Username --password=My_Password

我的代码如下:

var LOGIN_USERNAME, LOGIN_PASSWORD, casp;

casp = require('casper').create({
    clientScripts: ['jquery.min.js'],
     debugLevel: "debug",
     viewportSize: {
          width: 1024,
          height: 768
     },
     verbose: true,
     logLevel: 'info'
});

LOGIN_USERNAME = casp.cli.get('username');
LOGIN_PASSWORD = casp.cli.get('password');

casp.echo('Checking Username and password');
casp.echo(LOGIN_USERNAME);

casp.start('mywebsite.com', function () {

     casp.fill('form', {
          'username': LOGIN_USERNAME,
          'password': LOGIN_PASSWORD
     }, true );

     });

casp.run();

我无法登录该网站,我在屏幕上看到以下内容,之后没有任何反应: [info] [remote]尝试从选择器中获取表单元素:'表单'

感谢任何帮助。谢谢。

1 个答案:

答案 0 :(得分:0)

您必须在表单中使用CSS选择器:

 casp.fill('form#form-id', {
      'username': LOGIN_USERNAME,
      'password': LOGIN_PASSWORD
 }, true );