Как использовать относительный путь в Ruby Selenium WebDriver для загрузки файла с помощью Firefox?

Я использую веб-драйвер селена и загружаю файлы.pdf из Интернета с помощью Firefox, но я не смог сохранить эти файлы на локальном компьютере, используя относительный путь (я использую 32-разрядную машину Windows 7). Это работает нормально, если я использую абсолютный путь. Но я хочу использовать только относительный путь, так как позже мне нужно будет запустить его и на сервере.Мой код:

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);

1 ответ

Решение

Я сделал что-то подобное в моем коде ruby

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

Другие вопросы по тегам