I'm new to CasperJS and I'm having problems in logging in into this site http://weibo.com/login.php
here's what I've tried
this.fill('form#contact-form', {
'username': '[email protected]',
'password': 'anypassword',
}, true);
I can't used that since it has no form.
so I tried a different method using sendKeys.
this.sendKeys('.W_input ', '[email protected]');
Now my problem in here is that the input text has no ID in it, only a CLASS and both username and password have the same CLASS in it. how can i type into that textbox using only that class? or is it possible to use sendKeys using XPath?
casper supports CSS3 selectors (tuts+ has a decent rundown of the top 30 you should memorize) so you could do something like:
this.sendKeys('input[name=username]', '[email protected]');
I use querySelector function to set username and password with success:
var casper = require("casper").create();
casper.start('http://www.weibo.com', function() {
this.evaluate(function(username, password) {
document.querySelector('input[node-type="username"]').value = username;
document.querySelector('input[node-type="password"]').value = password;
document.querySelector('.W_btn_g:eq(1)').click();
}, 'your_username', 'your_password');
});
casper.then(function() {
this.wait(50000, function() {
this.echo("50s");
});
});
casper.then(function() {
this.capture('weibo.png');
});
casper.run();
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With