
どうやら、Chrome や Firefox などのエクスプローラーを使用してのみ Dropbox ファイルをダウンロードできるようです。wget を使用してダウンロードすると、HTML 形式のファイルが取得されます。なぜでしょうか?
例えばこのリンクを開くと
https://www.dropbox.com/s/mx9eqve5l2ipgyk/test.txt> エクスプローラーでは、
wget https://www.dropbox.com/s/mx9eqve5l2ipgyk/test.txt
このファイルの内容を取得できないのはなぜでしょうか? 以下はダウンロードする test.txt の一部ですが、これは test.txt の内容ではありません。
wget
では、エクスプローラーではなくを使用して Dropbox ファイルをダウンロードすることは可能ですか?
document.observe('script:loaded', function() {
SharingModel.init('test\x2etxt', Util.from_json('\x7b\x22item\x5fid\x22\x3a\x20\x22\x22\x2c\x20\x22secure\x5fhash\x22\x3a\x20\x22\x22\x2c\x20\x22subpath\x22\x3a\x20\x22\x22\x2c\x20\x22tkey\x22\x3a\x20\x22mx9eqve5l2ipgyk\x22\x7d'))
SharingModel.init_file()
$('emsnippet-9911dfc627e1d541').innerHTML = 'test\x2etxt'.em_snippet(50, 0.750).escapeHTML();
$('emsnippet-add7879f5d805012').innerHTML = 'test\x2etxt'.em_snippet(20, 0.750).escapeHTML();
$('emsnippet-981ac0639529f983').innerHTML = 'test\x2etxt'.em_snippet(20, 0.750).escapeHTML();
FilePreview.init_text('https\x3a\x2f\x2fdl\x2edropbox\x2ecom\x2fs\x2fmx9eqve5l2ipgyk\x2ftest\x2etxt', 0) });
} else if (window.jQuery) {
jQuery(function () {
SharingModel.init('test\x2etxt', Util.from_json('\x7b\x22item\x5fid\x22\x3a\x20\x22\x22\x2c\x20\x22secure\x5fhash\x22\x3a\x20\x22\x22\x2c\x20\x22subpath\x22\x3a\x20\x22\x22\x2c\x20\x22tkey\x22\x3a\x20\x22mx9eqve5l2ipgyk\x22\x7d'))
SharingModel.init_file()
$('emsnippet-9911dfc627e1d541').innerHTML = 'test\x2etxt'.em_snippet(50, 0.750).escapeHTML();
$('emsnippet-add7879f5d805012').innerHTML = 'test\x2etxt'.em_snippet(20, 0.750).escapeHTML();
$('emsnippet-981ac0639529f983').innerHTML = 'test\x2etxt'.em_snippet(20, 0.750).escapeHTML();
FilePreview.init_text('https\x3a\x2f\x2fdl\x2edropbox\x2ecom\x2fs\x2fmx9eqve5l2ipgyk\x2ftest\x2etxt', 0) });
}
コマンドでtest.txtを取得できない
wget https://www.dropbox.com/s/mx9eqve5l2ipgyk/test.tx
ls -l
-rw-rw-r-- 1 mirror mirror 30K Sep 6 15:01 test.txt
答え1
質問内のリンクはファイルへのリンクではなく、このファイルの Dropbox ページへのリンクです。
ダウンロードして使用したい場合はwget
、右側のダウンロードボタンを押したときにドロップされるメニューから直接ダウンロードするためのリンクをコピーする必要があります。
私の場合は、それでうまくいきました。
ただし、ブラウザ外部からリンクをダウンロードする際の問題は、リンク自体以外のパラメータに関係する場合があります。リンクを単にコピーしただけでは存在しない一般的な要素は、サイトの Cookie です。
これを試してクールなFFアドオン正しいwget
リンクを取得するには
また、特に、通常のワークステーションではなく既知のワークステーションについて話している場合は、もちろん Dropbox クライアントをインストールできます。これは最も簡単な方法です。ボックスをファイル構造の一部にするだけで、複雑なダウンロードが不要になります。
これを見てaskubuntu.com の投稿、 そしてそのドロップボックスダウンロードページ。
答え2
リンクの最後に追加するだけです?dl=1
。例:https://www.dropbox.com/s/mx9eqve5l2ipgyk/test.txt?dl=1
これにより、ファイルに何も追加せずに、問題のファイルを正常に取得できるようになります。
もう一つ!ファイルを別の場所に保存したい場合は、-O
このようなオプションを使用してください
wget -O /root/Desktop/test.txt "https://www.dropbox.com/s/mx9eqve5l2ipgyk/test.txt?dl=1"
また、ちょっとした GUI が必要な場合は、zenity
ファイルがダウンロードされる場所をマークするために使用できます。
以下にコード例を示します。
#!/bin/bash
dir=$(zenity --file-selection --directory)
wget -O $dir/test.txt "https://www.dropbox.com/s/mx9eqve5l2ipgyk/test.txt?dl=1"
答え3
Dropbox はこれを修正しwget
、インタースティシャルの代わりにファイルを正しく取得するようにしました。
ファイルへの直接リンクを取得するには、「リンクを共有」を使用します。
答え4
これを実現する Python スクリプトが GitHub にあります:
https://github.com/dpdornseifer/dropbox_download
また、Dropbox サーバーは転送の再開をサポートしていません。
Dropbox はクライアントとして wget の使用をサポートしており、適切なファイルに自動的にリダイレクトするようです。それとも、wget は単にリダイレクトに従っているだけなのでしょうか?