我有一个网页,如果打开/关闭特定股票,则会有一个指标。 为此,我想设置一个if&否则如果声明。出于某种原因,我在日食中遇到错误。
*注意:不知道它是否有帮助,但是如果我将代码复制/粘贴到一个新的空类“主”,它可以正常工作 - 所以代码的结构是好的我猜测。
import pandas as pd
import numpy as np
desired_width = 320
pd.set_option('display.width', desired_width)
np.set_printoptions(linewidth=desired_width)
我在'else'下遇到语法错误:
令牌“else”上的语法错误,删除此令牌
答案 0 :(得分:2)
else if (Status == driver.findElement(By.cssSelector(".greenClockBigIcon")) );
这是你的错误:最后一个;必须删除
答案 1 :(得分:0)
您发布的代码存在一些问题。
您将;
放在if
和else if
语句的末尾。他们都应该被删除。
您正在将元素Status
(当前为null
)与.findElement()
返回进行比较。如果找不到该元素,它将抛出异常,而不是返回null
元素。解决这个问题的方法是使用.findElements()
(注意复数,元素 s )并检查列表是否为空。如果为空,则找不到该元素。
在这两种情况下都存在.back()
语句。因此,它可以移出if
并以任何方式执行。
重写代码
public static void runTestClock(WebDriver driver)
{
if (driver.findElements(By.cssSelector(".redClockBigIcon")).isEmpty())
{
System.out.println("Stock is closed");
}
else if (driver.findElements(By.cssSelector(".greenClockBigIcon")).isEmpty())
{
System.out.println("Stock is open");
}
driver.navigate().back();
}
说了这么多......通过查看你正在使用的CSS选择器,我猜想绿色意味着股票是开放的,红色意味着它已经关闭。这意味着你的逻辑向后。我想你需要打开你的消息< - >关闭,但你会比我更清楚......
答案 2 :(得分:0)
请删除;在if和else if语句结尾处的(分号)。