我想用Selenium(Python)实现Chrome的自动化。目标是用现有的CSV或Excel文件填写数千个在线表单。在
源文件将有数千行和大约40列,标识要输入到这些自定义字段中的自定义字段或值的元素。在
我目前正在使用一个带有CSV扫描仪的While循环,在Selenium和Java中使用这样的解决方案。该项目使用一行中的每一列来填写web表单,单击submit,然后转到其中一列中的URL转到下一行。一旦代码移动到CSV的每一行,循环就完成了。在
下面是在Java中使用Scanner实用程序时的代码:
//LOCATE MASTER CSV FILE
String fileName = "CSV PATH.csv";
File file = new File(fileName);
Scanner inputStream = null;
int docSize=0;
//DETERMINE SIZE OF CSV
inputStream = new Scanner(file);
while( inputStream.hasNext() ) {
docSize++;
inputStream.nextLine();
}
//INITIALIZE CHROME AUTOMATION
setUpDriver();
//LOGIN TO WEBSITE
login();
//CREATE A SCANNER OBJECT TO READ CSV
inputStream = new Scanner(file);
int count = 0;
//SENDS CHROME TO URL
driver.get("URL ADDRESS");
sleep(3);
int counter = 1;
//MAIN LOOP:
for(int i=0; i<docSize; i++){
//PULLS NEXT ROW OF CSV
String next = inputStream.nextLine();
list.add(next);
count++;
//BREAKING APART THE CSV BY COLUMMNS (',')
values = next.split(",");
for(int j=0; j<values.length; j++)
{
//System.out.println(j + " " + values[j]);
}
//SEND CHROME TO URL
try {
sleep(0);
String newURL = values[1].toString();
driver.get(newURL);
sleep(3);
} catch (ElementNotVisibleException | NoSuchElementException e1) {
System.out.println("Booking # " + count + " failed.");
continue;
}
这可以用Python为Selenium编写吗?我宁愿远离Java。在
谢谢!在
目前没有回答
相关问题 更多 >
编程相关推荐