35

以下に示すSelenium Webdriverを使用して、次のタスクを実行する必要があります。

  1. ファイルのダウンロードを開始するリンク/ボタンをクリックします (ファイルの種類は、画像、pdf、jar など)。
  2. ポップアップが表示された場合は、[保存] をクリックします (例: http://selenium.googlecode.com/files/selenium-server-standalone-2.33.0.jarの場合) 。
  3. そのファイルを保存する場所を指定します。

誰でも共有できますか、Java を使用してこれを実装するにはどうすればよいですか?

4

7 に答える 7

25

保存ダイアログ ボックスにアクセスできなくなります。それはOSによって制御されます。実際にできることは、ブラウザのデフォルトのダウンロード場所を設定し、ファイルを自動的にダウンロードできるようにすることだけです。次に、Java でファイルを確認します。

この以前の SO questionからのこの回答を確認する必要があります。基本的に、Firefox プロファイルを設定するときに、常にダウンロードする MIME タイプのコンマ区切りリストにプロパティを設定する呼び出しを追加します。browser.helperApps.neverAsk.saveToDisk

firefoxProfile.setPreference("browser.helperApps.neverAsk.saveToDisk","text/csv");

About:configsに関するこの Mozilla KB FAQ 記事を参照してください。

更新 これが可能になったようです 別の質問でこの回答を参照してください

于 2013-05-27T00:42:03.150 に答える
0
String path="D:\xyz\abc\";

FirefoxOptions profile = new FirefoxOptions();

profile.addPreference("browser.download.folderList", 2);

profile.addPreference("browser.download.manager.showWhenStarting", false);

profile.addPreference("browser.download.dir", **path**);

profile.addPreference("browser.helperApps.neverAsk.openFile","text/csv,application/x-msexcel,application/excel,application/x-excel,application/vnd.ms-excel,image/png,image/jpeg,text/html,text/plain,application/msword,application/xml");

profile.addPreference("browser.helperApps.neverAsk.saveToDisk","text/csv,application/x-msexcel,application/excel,application/x-excel,application/vnd.ms-excel,image/png,image/jpeg,text/html,text/plain,application/msword,application/xml");

profile.addPreference("browser.helperApps.alwaysAsk.force", false);

profile.addPreference("browser.download.manager.alertOnEXEOpen", false);

profile.addPreference("browser.download.manager.focusWhenStarting", false);

profile.addPreference("browser.download.manager.useWindow", false);

profile.addPreference("browser.download.manager.showAlertOnComplete", false);

profile.addPreference("browser.download.manager.closeWhenDone", false);

new FirefoxDriver(profile);
于 2018-02-08T11:26:24.203 に答える
0

Java と Chromdriver を使用している場合は、ダウンロードをより簡単にするライブラリを開発しました。

その機能の中で、1 つのコード行でダウンロード ディレクトリを設定し、ファイルが正常にダウンロードされたことを確認できます。

@Test
void downloadAttachTest() throws InterruptedException {
    adamInternetPage.navigateToPage(driver);
    seleniumDownloadKPI.fileDownloadKPI(
            adamInternetPage.getFileDownloadLink(), "SpeedTest_16MB.dat");
    waitBeforeClosingBrowser();
}
于 2018-06-06T19:34:14.017 に答える