我编写了一个简单的代码来刷新浏览器游戏网页,并使用硒网络浏览器自动执行该页面上的任务。
我做了一个小循环:
while (true) {
driver.findElement(By.linkText("Premium Exchange"));
if (driver.findElement(By.id("premium_exchange_stock_wood") //<-- if the value of the wood stock is 64 or higher){
driver.findElement(By.name("buy_wood")).clear();
driver.findElement(By.name("buy_wood")).sendKeys("64"); //enter 64 in the 'buy box'
Thread.sleep(1000);
driver.findElement(By.xpath("//input[@value='Calculate best offer ']")).click(); //click calculate best offer
Thread.sleep(1000);
driver.findElement(By.xpath("//div[@id='premium_exchange']/div/div[2]/button")).click(); //click buy
Thread.sleep(10000);
}
该页面如下所示:链接
通常,“ Wood”库存为0。当此库存至少达到64时,我希望我的代码执行if语句,并无限循环。我一直坚持让程序将webelement的值视为int。。我的意图是这样的:
如果wood_stock等于64或大于64,则购买木材,重复一次。
任何帮助,将不胜感激!我对硒很陌生!
使用.getText()和parseInt函数
String strVal=driver.findElement(By.id("premium_exchange_stock_wood").getText();//gets the value as string
int intVal=Integer.parseInt(strVal);converts string to integer
if (intVal>=64){
//Perform further actions
}
注意:如果.getText()不起作用,则可以使用.getAttribute(“ innerHTML”)或.getAttribute(“ outerHTML”)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句