2017-12-31 398 views
0

私は単一のウェブサイトから複数のファイルをダウンロードしたいと思いますが、私が持っている最大の癖は、ダウンロードするファイルを要求するとサーバーが自動的にランダムなファイル名を生成することです。ここで問題となるのは、手動で各ファイルを調べなくても、どのファイルがどのファイルなのかわかりません。ただし、ファイルをダウンロードするリンクがあるサイトでは、すべて名前が付いています。私は自分で手動でダウンロードした場合、メニューが起動する「名前を付けて保存」たとえば...Seleniumを使用してファイルをダウンロードするときに、ファイルのファイル名を変更する方法はありますか?

File name  -> Resultant file name(fake file names) 
Week1.pdf   2asd123e.pdf 
Week1_1.jpg  dsfgp142.jpg 
.   
. 
Week10.pdf  19fgmo2o.pdf 
Week11.pdf  0we5984w.pdf 

、私は私のファイル名を変更するオプションを与える、「ダウンロード」とポップアップをクリックして入力します手動で[OK]をクリックしてダウンロードを確認し、ダウンロードを開始します。

現在、私のコードは、ウェブサイトを開き、自分のアカウントにログインし、ファイルページに行き、それに対応するサーバーリクエストリンクでファイルを探します。 IE:変数に "Week1.pdf"というファイルの名前を保存して、要求リンクをクリックすることはできますが、唯一の問題は[名前を付けて保存]メニューには名前の変更ができないということですファイルを表示するか、すぐにファイルを保存するかを選択できます。私はちょっと見渡して、Firefoxのプロフィール設定で試してみましたが、何も効果がありませんでした。この問題をどうやって解決するのですか?

おかげ

答えて

0

ファイルが保存された後、私は(最後に保存されたファイルのダウンロードフォルダ内に見て、...あなたは試みるかもしれないいくつかの

  1. を考えることができます正しい拡張子)を指定します。このスレッドを実行していない限り、これはおそらく問題ありません。

  2. ダウンロードディレクトリ内のファイルのリストを取得し、ファイルをダウンロードし、ファイルのリストに存在しないファイルを探します。このスレッドを実行していない限り、これは安全です。

  3. 新しいフォルダを作成し、ダウンロードディレクトリを新しく作成したフォルダに設定して、ファイルをダウンロードします。そのディレクトリ内の唯一のファイルである必要があります。私が知る限り、ドライバインスタンスを作成する前にダウンロードディレクトリを設定することしかできません。これらのケースのそれぞれにおいて

複数のファイルをダウンロードすることを計画している場合、あなたがそれらをダウンロードしたり、自分でそれを容易にするためにいくつかの既知のディレクトリにそれらを移動すると、私は、各ファイルの名前を変更します。

私はanother answerで横断した別の方法があります。

+1

私はこれを最初にやっていると思っていましたが、そうするのがもっともらしい方法です。最初に、234qwrmsdf.pdfのようなランダムな名前でファイルをダウンロードし、ダウンロードが完了したらファイル名をWeek1.pdfに戻してください。私の唯一の不満は、そうするには年月がかかるということです。うまくいけば、それをスレッド化する方法です。 ありがとう! –

関連する問題