Logging in on Steam - CasperJS
Logging in on Steam - CasperJS
我想用CasperJS登录Steam,但它不想工作。
这是我的代码:
var url = 'https://steamcommunity.com/login/';
casper.start(url, function() {
console.log("page loaded");
casper.waitForSelector("form input[name='username']", function() {
}, true);
this.fill('form[name="logon"]', {
username: 'username',
password: 'password'
}, true);
this.click('form input#SteamLogin');
});
执行完这个代码后,CasperJS说:
[info] [remote] submitting form to #, HTTP POST
[warning] [remote] unable to submit form
我还使用了函数"StartLogin"(我在steam的源代码中找到了这个函数),并用这个执行了它:
casper.evaluate(function(){
StartLogin();
});
但是CasperJS出现了这个错误:
Page Error: ReferenceError: Can't find variable: StartLogin
如果有人能帮助我,我将非常感谢:)
你的问题很模糊,但我正在努力帮助
你必须知道casper.evaluate
和经典的assert
语句之间的区别,我认为你混淆了
casper.evaluate
在phatom上下文中评估特定语句,它不评估任何函数。如果你想评估一个函数的正确return
,可以这样使用:
var val = casper.evaluate(function() {if(true) return 'foo';});
test.assertEquals(val,'foo');
我希望我能帮你一点忙,更多信息请查看:
- CasperJS评估
- 检测仪模块casper
- 适用于Chrome的CasperJS插件
在填充函数中,您将submit bool设置为true,以便在填写用户名和密码后提交表单。
取出this.click
,然后将casper.then(function(){})
添加到末尾以执行下一个命令。
基本上,你试图点击一个不在那里的按钮,因为你已经通过提交表格进入下一页。
希望这能有所帮助!
相关文章:
- CasperJS在使用sendKeys时不会上传文件
- Steam Web API:I'我不知道该如何处理这个看起来像哈希的url来生成图像
- 我如何才能让CasperJS和PhantomJS在约塞米蒂玩得很好
- 从node.js向CasperJS传递参数数组
- CasperJS在每个URL中循环
- 当已经使用CasperJS选择了css类元素时,断言该类的存在
- Casperjs等待资源
- CasperJS(phantom 1.9.7),从昨天起就无法连接https
- CasperJS填充表单-输入名称有方括号
- 如何测试选择器是否存在于CasperJS中
- 使用CasperJS测试多个HTML页面
- casperjs对表单使用waittentivisible
- Node.js Steam聊天机器人
- CasperJS-如何治疗'单击'在一个循环中
- casperjs-css选择器存在,但当单击它时会引发“”;CasperError:无法在不存在的选择器“”上调度mou
- 为什么不't CasperJS'sendAJAX函数为PUT请求发送任何内容
- 可以'无法在CasperJS中复制POST请求
- 如何从CasperJS访问iframe
- Steam bot错误-TypeError:无法读取属性'0'的未定义
- Logging in on Steam - CasperJS