0

我正在使用 selenium web 驱动程序并使用 firefox 从 Internet 下载 .pdf 文件,但我无法使用相对路径将这些文件保存在本地机器上(我使用的是 windows 7 32 位机器)。如果我使用绝对路径,它工作正常。但我只想使用相对路径,因为我还需要稍后在服务器上运行它。 我的代码:

public static void main(String args[]) throws ClassNotFoundException, IOException{

    FirefoxProfile fprofile = new FirefoxProfile();
    fprofile.setPreference("browser.download.useDownloadDir", true);
    fprofile.setPreference("browser.download.dir", "./Folder");
    fprofile.setPreference("browser.download.folderList", 2);
    fprofile.setPreference("browser.helperApps.neverAsk.saveToDisk", "application/pdf;");
    fprofile.setPreference( "browser.download.manager.showWhenStarting", false );
    fprofile.setPreference( "pdfjs.disabled", true );
    fprofile.setPreference("plugin.scan.plid.all", false);
    fprofile.setPreference("plugin.scan.Acrobat", "99.0");

    WebDriver driver = new FirefoxDriver(fprofile);
4

1 回答 1

0

我在我的红宝石代码中做了这样的事情

download_directory = File.join(File.absolute_path('../..', File.dirname(__FILE__)),"downloads")

我相信它在java中会很相似-从相对路径中获取绝对路径

Path path = FileSystems.getDefault().getPath("./Folder");
String absolutePath = path.toAbsolutePath().toString();

http://www.javacodex.com/Files/Converting-A-Relative-Path-Into-An-Absolute-Path

于 2015-12-10T08:53:25.250 回答