web-dev-qa-db-ja.com

WGETを使用してMediafireからRARファイルをダウンロードする

例:http://www.mediafire.com/?tjmjrmtuyco

これは私が試したものでした...

wget -A rar [-r [-l 1]] <mediafireurl>

つまり、再帰オプションの有無にかかわらず試してみました。結局、サイズが数KBのHTMLページをダウンロードすることになりますが、私が欲しいのは90〜100MBとRARの範囲です。

気づいていないかもしれない人々のためにMediaFireで何が起こるかは、それが最初に言うということです

ダウンロードリクエストを処理しています...

1秒ほど後にこのテキストはダウンロードリンクに変わり、次のようになります。

ダウンロードを開始するには、ここをクリックしてください。

この状況に適切なスクリプトを書く方法を誰かに教えていただければ幸いです。

から Mediafires利用規約

サービスの一般的な使用、許可および制限

MediaFireサービスの使用中は、次のことを行わないことに同意するものとします。

サービスの一部を変更または修正する。

違法な目的で本サービスを使用すること。

ロボット、スパイダー、オフラインリーダー、サイト検索および/または取得アプリケーション、またはその他のデバイスを使用して、パブリック検索エンジンを除くサービスの任意の部分を取得またはインデックス付けします

したがって、本質的にMediafireがWebサイトを介して提供するツール以外のものを使用することにより、実際には利用規約に違反していることになります。

6
blendmaster345

私は自分自身を試したことがありませんが、Webサイトを「ごまかす」ことができることがいくつかあります。

例えば ​​--refererリファラーURLを指定できます-おそらくサイトはあなたが特定の「ホームページ」ページか何かから来ていることを期待しています:このオプションでwgetはそれがそこから来ているふりをします。

また、--user-agentは、wgetを別のエージェント、つまりFirefoxのようなブラウザの「ふり」にします。

--headerを使用すると、HTTPリクエスト全体を偽造して、ブラウザのリクエストを模倣できます。

これらのいずれも機能しない場合は、Cookieやその他の詳細設定を処理するオプションもあります。man wgetリスト全体。

これが少しお役に立てば幸いです。成功した場合は、どのように行ったかを投稿してください。

4
MacThePenguin

実際にそれを行うことができます。あなたがしなければならないことは:

  • コンピュータにダウンロードするようにリンクに移動します
  • 「ダウンロード」ボタンが表示されたら、「右クリック」してリンクをコピーし、それをwgetに追加します。

それは次のようなものになります

wget http://download85794.mediafire.com/whatever_your_file_is
3
T Jones

このようなサイトでは、複数の方法を使用して、単純な/自動ダウンロードを防止しています。そのような技術のいくつかの例は次のとおりです。

  • セッションの使用
  • 一意のダウンロードリンク/キーの生成
  • CAPTCHASの使用(can敗北しますが、wgetではありません)
  • 非プレミアムユーザーがダウンロードを遅らせるためのタイマー
  • ダウンロードリンクを含むIFrame
  • 別のサイト/ドメインからのリンクを提供する
  • Webクライアントをチェックしています(Webブラウザか何か他のものですか)
  • ホットリンクを防ぐためにリファラーをチェックしています(ダウンロード要求はサイトまたは他の場所から来ましたか)
  • ヘッダーをチェックして、期待どおりであることを確認します
  • GETの代わりにPUTを使用して、「非表示」フォームフィールドを使用する
  • クッキーの設定と確認
  • JavaScriptを使用してダウンロードリンクをリダイレクトまたは生成する
  • Flashを使用してユーザーをテストするか、ダウンロードリンクを生成します

基本的に、cURLやwgetなどのツールを使用してこのようなサイトからファイルをダウンロードすることは、せいぜい困難であり、確かに実用的ではありません。

2
Synetech

bash関数:

mdl () {
url=$(curl -Lqs "$1"|grep "href.*download.*media.*"|tail -1|cut -d '"' -f 2)
aria2c -x 6 "$url" # or wget "$url" if you prefer.
}

例:
$ Sudo apt install aria2
$ mdl " http://www.mediafire.com/?tjmjrmtuyco "

01/14 13:58:34 [通知] 1つのアイテムをダウンロードしています
38MiB/100MiB(38%)CN:4 DL:6.6MiB ETA:9s]

1
Zibri

ダウンロードボタン「コピーリンクアドレス」を右クリック

wget(url)

そのように簡単で、それをやっただけです。

0
AnonymousUser