我是自动化测试的初学者(使用Selenium,JavaLang N Eclipse)。
我正在尝试从网页中获取少量值并将其存储在Excel中。
输入值取自excel,输出将存储在excel中。
我目前面临的问题是,让我告诉你一个例子。
首先,它从excel获取帐号123,然后输入搜索字段,然后选择适当的帐户并提取姓名和电子邮件。
其次,下一个帐号说234是从excel获取并输入到搜索字段,然后它获得该帐户的相应名称和电子邮件(234)。
我正在尝试使用两个帐户,就像现在一样。
因此,当我看到输出或者更确切地说打开excel文件时,我只获得两列中的最后一个帐户所有者名称和编号。
我需要的结果是一列中的第一个帐户名和电子邮件,另一列中的第二个帐户名和电子邮件。
我要求所有人帮我解决这个问题!!。
感谢您参与此活动..
int rc= ws.getRows();
以下是代码:
WebElement s1=driver.findElement(By.xpath("//table[@id='kInfo']/tbody/tr[10]/td"));
//WebElement s1=driver.findElement(By.xpath("//td[@class='tRight']/a"));
String s2=s1.getText();
System.out.println("data:"+s2);
String D1= driver.findElement(By.xpath("//div[@class='vcard clearfix']")).getText();
System.out.println(D1);
Thread.sleep(1000);
/*driver.findElement(By.xpath("//*[@id='homePage']")).click();
driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
Thread.sleep(1000);*/
WritableWorkbook wb1 = Workbook.createWorkbook( new File("C:\\Bhasker-DNT\\Excel\\ouput.xls"));
WritableSheet ws1 = wb1.createSheet("customsheet", 1);
{
for(int count=0;count<4;count++)
{
for(int i=0;i<rc-1;i++)
{
Label label = new Label(i, 0, s2);
ws1.addCell(label);
Label label1 = new Label(i, 1, D1);
ws1.addCell(label1);
}
}
//Label label = new Label(0, 0, s2);
//ws1.addCell(label);
}
wb1.write();
wb1.close();
答案 0 :(得分:0)
要获取div或选择或p的元素,您需要xpath我想你拥有它。 比
String name = ""
List<WebElement> your_list= driver.findElements(By.xpath("xpath_stuff or workbook.get(I)"));
for (int i=0; i<your_list.size(); i++) {
// System.out.println(i+ ". " + your_list.get(i).getText());
// here you can write the elements to excel.
//if you need first name you need to just
if(i==(you know which is the first row that conatins the name)
{
name = your_list.get(i).getText();
}
... the same way the email and the other
ws1.addCell(your_list.get(i).getText());
}
wb1.close();
我希望它有所帮助,如果没有,请从html和from excel中提供一些示例。