用Java单击html文本

时间:2018-09-24 20:12:55

标签: java html selenium jsoup htmlunit

我正在尝试创建一个可以单击html中的文本/按钮的类。该页面具有用户名和密码,因此我使用JSOUP来使用.data插入用户和密码来解析文档:

Select_Info

这时一切正常。但是现在我在html中有一个这样的按钮:

Document document = Jsoup.connect("url").data("user", user)
                .data("password", password)
                .userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64; rv:23.0) Gecko/20100101 Firefox/23.0")
                .timeout(3000).post();

但是我不知道如何单击该文本/按钮。

有人知道我怎么做?谢谢

1 个答案:

答案 0 :(得分:0)

这对我有用

import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.remote.DesiredCapabilities;

public class TestMain {

    public static void main(String[] args) {

        System.setProperty("webdriver.chrome.driver", "C:\\tests\\chromedriver.exe");

        ChromeOptions options = new ChromeOptions();
        options.addArguments("window-size=1024,768");

        DesiredCapabilities capabilities = DesiredCapabilities.chrome();
        capabilities.setCapability(ChromeOptions.CAPABILITY, options);
        WebDriver driver = new ChromeDriver(capabilities);

        driver.get("http://google.com/");

        if (driver instanceof JavascriptExecutor) {
            ((JavascriptExecutor) driver).executeScript("document.getElementsByClassName(\"gb_we\")[0].click()");
        }

    WebElement fName=driver.findElement(By.id("identifierId"));
    fName.sendKeys("test@gmail.com");

    WebElement btnNext =driver.findElement(By.id("identifierNext"));
    btnNext.click();

    }
}