Selenium和WhitePages

时间:2015-07-09 08:58:49

标签: css selenium selenium-webdriver

我正试图在https://secure.whitepages.com/signup上注册。他们要求输入我的名字,姓氏,电子邮件和密码。

对于名称,我尝试使用以下语法通过CSS定位元素,但我找不到元素:

"input#name_fname"

但我得到的只是错误。

姓名,电子邮件和密码的正确语法是什么?

3 个答案:

答案 0 :(得分:0)

将这些xpath用于名称,电子邮件和密码: 名称的Xpath:

//input[@id='user_fname']
     or
//input[@title='Enter your first name']

电子邮件的xpath:

//input[@id='user_email']

密码的xpath:

//input[@id='user_password']

答案 1 :(得分:0)

我尝试过使用Xpath并为我工作。请试试这个。

使用驱动程序声明一些等待时间总是更好。最好用驱动程序初始化/分析来声明它。 由于等待问题,您的代码可能无法正常工作。我尝试过使用Xpath并为我工作。请试试这个。

import java.util.concurrent.TimeUnit;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;


public class Whitepages
{
public static void main(String[] args)
{
    Whitepages.loadPage("https://secure.whitepages.com/signup");
}
public static void loadPage(String url)
{
    WebDriver driver = new FirefoxDriver();
    driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
    driver.get(url);
    driver.manage().window().maximize();
       System.out.println("Browser opned");
    driver.findElement(By.xpath("//*[@id='user_fname']")).sendKeys("Fname");
       System.out.println("Entered Fname");
    driver.findElement(By.xpath("//*[@id='user_lname']")).sendKeys("Lname");
       System.out.println("Entered Lname");
    driver.findElement(By.xpath("//*[@id='user_email']")).sendKeys("flag1234@gmail.com");
       System.out.println("Entered email");
    driver.findElement(By.xpath("//*[@id='user_password']")).sendKeys("water123");
    driver.findElement(By.xpath("//*[@class='centered top-padding clear-all']/input")).click();
    System.out.println("Welcome to whitePages");
    driver.quit();      
}
}

答案 2 :(得分:0)

尝试 driver.findElement(By.cssSelector(“#user_fname”)); 。如果你想通过firefox / ie console进行测试,请尝试以下命令 - >的 document.querySelector( “#user_fname”)即可。此css定位器仅适用于First Name。