URL位于文件中,需要从该文件复制并在浏览器中单击。必须对所有URL进行此过程。在最大条件下,文件大小小于1 MB。下载完成后,将仅开始另一个文件下载,这意味着活动下载在任何时候均为1。
我正在手动执行此过程,用于下载125个文件。此数字在未来几天可能会增加。因此,我计划使此过程自动化。我可以用硒实现吗?
我对Selenium Webdriver有所了解,我能够编写简单的脚本。 如果硒无法处理,请参考其他方法。
答案 0 :(得分:0)
首先,使用Selenium / Java读取excel文件。请参阅下面的链接以获取更多信息:
https://www.guru99.com/all-about-excel-in-selenium-poi-jxl.html
一个接一个地从Excel工作表中读取URL:
while(current_row<=row_count)
{
driver.get("url captured from the excel")
}
我认为当您点击URL时文件会自动下载。如果在下载完成后要显示任何特定元素,则可以等待UntilElementVisible或Sikuli进行下载(对于手动下载)
答案 1 :(得分:0)
使用以下代码从excel工作表中获取
public class excel {
public static String getExcelData(String sheetName, int rowNum,int colNum)
{
String url=null;
try
{
FileInputStream fis=new FileInputStream("filepath.xls");
Workbook wb=WorkbookFactory.create(fis);
Sheet s=wb.getSheet(sheetName);
Row r=s.getRow(rowNum);
Cell c=r.getCell(colNum);
retval=c.getStringCellValue();
}
catch(Exception e)
{
e.printStackTrace();
}
return url;
}
}
WebDriver driver;
driver.get(url);
这将下载文件。
答案 2 :(得分:0)
URL位于文件中,需要从该文件复制并在浏览器中单击。
最简单的解决方案是使用Kantu Selenium IDE(不需要Selenium Webdriver)。您可以在循环中read the list of URLs from a CSV file,如链接的论坛帖子中所示:
{
"CreationDate": "2018-6-27",
"Commands": [
{
"Command": "csvRead",
"Target": "url.csv",
"Value": ""
},
{
"Command": "open",
"Target": "${!col1}",
"Value": ""
}
]
}
该代码段可以直接复制到source code tab中。