是否可以使用硒从Chrome浏览器读取下载的文件



我通过单击按钮功能下载了一个文本文件,使用Selenium Java. 然后将文件下载到系统中的特定位置,例如,

C://myAppfiles。

但是由于某种原因,我无法访问该下载的文件夹。但是我必须在下载时阅读该文件。

怎么做? 是否可以使用硒或任何其他可用的方法从browser(chrome)读取该文件?

所以我建议执行以下操作: 等到文件下载完全完成。

之后 - 尝试列出给定目录中的所有文件:文件夹和子文件夹中的所有文件

public static void main(String[]args)
{
File curDir = new File(".");
getAllFiles(curDir);
}
private static void getAllFiles(File curDir) {
File[] filesList = curDir.listFiles();
for(File f : filesList){
if(f.isDirectory())
getAllFiles(f);
if(f.isFile()){
System.out.println(f.getName());
}
}
}

仅文件/文件夹

public static void main(String[]args)
{
File curDir = new File(".");
getAllFiles(curDir);
}
private static void getAllFiles(File curDir) {
File[] filesList = curDir.listFiles();
for(File f : filesList){
if(f.isDirectory())
System.out.println(f.getName());
if(f.isFile()){
System.out.println(f.getName());
}
}
}

这将帮助您了解是否有任何文件(在给定的目录中(。 不要忘记使路径独立于平台(到文件夹/文件(,例如:

//platform independent and safe to use across Unix and Windows
File fileSafe = new File("tmp"+File.separator+"myDownloadedFile.txt");

此外,您可能希望通过 Path 方法检查文件是否实际存在。

import java.nio.file.Files;
import java.nio.file.LinkOption;
import java.nio.file.Path;
import java.nio.file.Paths;
public class Main {
public static void main(String[] args) throws Exception {
Path filePath= Paths.get("C:\myAppfiles\downloaded.txt");
System.out.println("if exists: " + Files.exists(firstPath));
}
}

此外,path 建议您检查文件上的其他一些选项:

The following code snippet verifies that a particular file exists and that the program has the ability to execute the file.
Path file = ...;
boolean isRegularExecutableFile = Files.isRegularFile(file) &
Files.isReadable(file) & Files.isExecutable(file);

一旦您遇到任何异常 - 请随时在此处发布。 希望这对您有所帮助

最新更新