wget कमांड का उपयोग करके ड्रॉपबॉक्स फ़ाइलों को कैसे डाउनलोड करें?


68

लगता है कि मैं केवल क्रोम और फ़ायरफ़ॉक्स जैसे एक्सप्लोरर का उपयोग करके ड्रॉपबॉक्स फ़ाइलों को डाउनलोड कर सकता हूं। यदि मैं डाउनलोड करने के लिए wget का उपयोग करता हूं, तो मुझे एक फ़ाइल मिलेगी जो html प्रारूप में है। क्यों?

उदाहरण के लिए आप इस लिंक को खोल सकते हैं

आपको इस फ़ाइल की सामग्री नहीं मिलेगी, क्यों? इसे डाउनलोड करने के लिए निम्नलिखित test.txt का हिस्सा है, यह test.txt की सामग्री नहीं है।

तो क्या wgetएक्सप्लोरर की बजाय ड्रॉपबॉक्स फ़ाइलों को डाउनलोड करना संभव है ?

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
wgetआपके लिंक का उपयोग करके test.txt(मेरी ओर से 4 बाइट्स "परीक्षण") को ठीक किया गया है। हो सकता है कि आपके अंदर कुछ ऐसा हो रहा हो .wgetrc?
जजलिन

@jjlin आपकी क्या आज्ञा है? मेरा ऊपर जोड़ दिया गया है
hugemeow

5
मैंने इस्तेमाल किया wget --no-check-cert https://dl.dropbox.com/s/mx9eqve5l2ipgyk/test.txt। मेरे लिए यह ठीक काम करता है, लेकिन यदि आप डाउनलोड को बाध्य करना चाहते हैं, तो आप wget --no-check-cert 'https://dl.dropbox.com/s/mx9eqve5l2ipgyk/test.txt?dl=1'इसके बजाय प्रयास करने पर विचार कर सकते हैं ( ?dl=1क्वेरी पैरामीटर पर ध्यान दें )।
jjlin

@jjlin तो शायद एक स्क्रिप्ट की जरूरत है अगर मैं ड्रॉपबॉक्स से फाइल डाउनलोड करना चाहता
हूं

जवाबों:


19

आपके प्रश्न का लिंक फ़ाइल का लिंक नहीं है, इस फ़ाइल के ड्रॉपबॉक्स पृष्ठ का लिंक है।
यदि आप wgetइसे डाउनलोड करने के लिए उपयोग करना चाहते हैं , तो आपको मेनू से सीधे डाउनलोड के लिए लिंक को कॉपी करना चाहिए जो डाउनलोड बटन को दाईं ओर धकेलता है।

मेरे मामले में, यह ठीक काम किया। हालांकि, कभी-कभी ब्राउज़र के बाहर से लिंक डाउनलोड करने में समस्याएं लिंक के अलावा अन्य मापदंडों से संबंधित होती हैं। जब आप लिंक को कॉपी करते हैं तो एक सामान्य तत्व साइट कुकीज़ नहीं होता है।

सही लिंक पाने के लिए इस शांत एफएफ ऐड-ऑन का प्रयास करेंwget

और यह भी, खासकर अगर हम एक ज्ञात कार्य केंद्र के बारे में बात कर रहे हैं और एक आकस्मिक नहीं है, तो आप निश्चित रूप से ड्रॉपबॉक्स क्लाइंट स्थापित कर सकते हैं। यह सबसे आसान तरीका होगा, बस अपने बॉक्स को आपकी फ़ाइल संरचना का हिस्सा होने दें और जटिल डाउनलोड की आवश्यकता को समाप्त करें।
इस askubuntu.com पोस्ट और ड्रॉपबॉक्स डाउनलोड पेज को देखें।


4
ब्राउज़र में सीधा लिंक प्राप्त करने की कोशिश करने से अपग्रेड विकल्प के लिए एक विज्ञापन आता है। मैं अन्य उत्तर ( superuser.com/a/486351/106977 ) को शामिल देखता हूं ?dl=1, लेकिन यह लिंक पर या तो प्राप्त करने की अनुमति नहीं देता है (शायद बॉक्स के उपयोग के कारण जब तक आप अपग्रेड नहीं करते)।
bgoodr

@amotzg फ्लैग के साथ ड्रॉपबॉक्स से डाउनलोड फिर से शुरू करने का एक तरीका है --continue? यह मुझे काम नहीं लगता। ( unix.stackexchange.com/questions/174850/… )
प्रयागपाद

@PrayagUpd, इस पाया stackoverflow.com/questions/18084677/...
amotzg

1
इस ऐड-ऑन ने एक साझा ड्रॉपबॉक्स लिंक के साथ मदद की जिसे डाउनलोड करने के लिए पासवर्ड की आवश्यकता होती है। ध्यान दें, "डाउनलोड" बटन पर राइट क्लिक करने पर, क्लिगेट का चयन करने से आपको URL को dl = 0 आउटपुट मिलता है, जो एक छोटी फ़ाइल है। बदलने के लिए? Dl = 1 सही डाउनलोड पथ देता है।
जॉनTheNiceGuy

113

बस ?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"

यह बहुत बढ़िया है, बॉक्स से बाहर काम करता है ...
स्लॉट

एक साझा फ़ोल्डर प्राप्त करने के लिए बस अपने सुझाव का उपयोग किया, और एक अद्भुत ज़िप फ़ाइल (नाम याद किया) प्राप्त किया। बहुत बढ़िया! बहुत बहुत धन्यवाद!!
राफारेनो

1
स्वीकार किए गए से बेहतर उत्तर। इससे बहुत मदद मिली, धन्यवाद।
सीयारिया

2
क्या यह तरीका अभी भी काम कर रहा है? कमांड का उपयोग करना wget 'https://www.dropbox.com/sh/my_folder_url?dl=1'मुझे मिलता रहता है ERROR 400: Bad Request
पॉल रौजीक्स

अब मुझे मिलता है 500 Internal Server Error, ड्रॉपबॉक्स एक असली बकवास है।
अवियो

14

ड्रॉपबॉक्स ने इसे संशोधित किया है ताकि wgetसही काम करेगा और इंटरस्टिशियल के बजाय फाइल को पुनः प्राप्त करेगा।

फ़ाइल का सीधा लिंक पुनः प्राप्त करने के लिए "शेयर लिंक" का उपयोग करें।


यह सही उत्तर होना चाहिए, यह शेयर लिंक के साथ तुच्छ है।
davidparks21

अच्छा! मुझे एक wget: No matchआउटपुट मिला , जो एकल उद्धरण चिह्नों के भीतर संलग्न लिंक का उपयोग करके हल किया गया था ( ?यूआरएल के कारण हो सकता है!)
मतिफौ

2

इस प्रश्न को देखा और सोचा कि इससे किसी को एक साथ कई फाइलें डाउनलोड करने में मदद मिल सकती है।

यहां एक छोटा विंडोज सीएमडी / बैच स्क्रिप्ट है जिसका आप उपयोग कर सकते हैं।
इसे बैश शेल (मैक / लिनक्स / आदि) के तहत काम करने के लिए आसानी से समायोजित किया जा सकता है।
यह CURL का उपयोग करता है । WGET को कुछ मामूली समायोजन के साथ भी काम करना चाहिए।

1. विंडोज के लिए कर्ल इंस्टॉल करें ।

2. एक पाठ फ़ाइल (1 प्रति पंक्ति) में व्यक्तिगत साझा लिंक रखो।

3. अपनी पाठ फ़ाइल में सभी "? Dl = 0" पैरामीटर (ओं) को "? Dl = 1" समायोजित करें और सहेजें।

4. 'geturllist.cmd' (या अपने चयन) नामक फ़ाइल के नीचे स्क्रिप्ट कॉपी करें

5. CMD प्रॉम्प्ट खोलें और CMD स्क्रिप्ट निष्पादित करें।

डाउनलोड की गई फाइलें आपके द्वारा स्क्रिप्ट निष्पादित की गई वर्तमान कार्यशील निर्देशिका में दिखाई देंगी।

नोट:
आपने शेयर किए गए लिंक को ठीक से स्वरूपित किया होगा कि "लिंक वाला कोई भी" खोल सकता है। यह स्क्रिप्ट ड्रॉपबॉक्स लॉगिन / ईमेल के आधार पर पासवर्ड संरक्षित लिंक या शेयरों के साथ काम नहीं करती है।
नोट:
यदि एकल फ़ाइल या फ़ाइल समूह (ऑटो ज़िप्ड) एक निश्चित आकार से अधिक है, तो यह त्रुटि के साथ विफल हो जाएगा ("ज़िप) फ़ाइल बहुत बड़ी है। कृपया इसे अपने ड्रॉपबॉक्स में जोड़ें।")। इस मामले में आपको ऐसा करना चाहिए जैसा कि यह कहता है .. यह स्क्रिप्ट काम नहीं करेगी क्योंकि शेयर लिंक सीधे डाउनलोड करने योग्य नहीं है।

उदाहरण पाठ फ़ाइल:
("रैंडमशेयरचैचर्स / हियर" को इसके साथ बदल दिया जाएगा जो इसे शेयर लिंक में कहते हैं)

 https://www.dropbox.com/sh/RandomShareCharacters/Here?dl=1
 https://www.dropbox.com/sh/RandomShareCharacters/Here?dl=1
 https://www.dropbox.com/sh/RandomShareCharacters/Here?dl=1

geturllist.cmd:

@echo off
set count=0
setlocal ENABLEDELAYEDEXPANSION
IF [%1]==[] GOTO BLANK
SET PARAMETER=%1
SET _PARAMETER=%PARAMETER:~0,2%

IF [%1]==[/?] GOTO HELP
IF [%1]==[--help] GOTO HELP
IF %_PARAMETER%==-h GOTO HELP

IF EXIST %1 (

  for /f "delims=" %%u in (%1) do (

      set /a count=count+1
      curl -kL "%%u" -O -J

      REM For other share sites:
      REM (ZIP EXAMPLE) if no filename type header sent:
      REM > curl -kL "%%u" -o "!count!.zip"
      REM > echo "!count!.zip"
      REM Will download file(s) called 1.zip, 2.zip, etc.
      )
  ) ELSE (
GOTO BLANK
)
GOTO DONE

:HELP
ECHO.
ECHO    Usage:
ECHO.
ECHO    geturllist [path]\[filename]
ECHO.
ECHO.
ECHO    Required Parameters:
ECHO.
ECHO    [filename]  A text file with one url per line
ECHO    -h      Help
ECHO.
GOTO DONE

:BLANK
ECHO.
ECHO Error: no input file found

:HELPMSG
ECHO.
ECHO Try -h for Help

:DONE
ECHO.
ECHO Exiting.
ECHO.

उदाहरण उपयोग:

geturllist.cmd X:\somepath\dropbox.txt


1
बिना किसी टिप्पणी के डाउन वोट प्यारे हैं। धन्यवाद। अपनी भावनाओं को चोट पहुँचाना?
bshea

1
अविश्वसनीय क्यों लोगों ने इस जवाब को गलत तरीके से उखाड़ फेंका, उखाड़ा।
जोसुला कृष्णा

0

आपको "फ़ाइल" या कुछ अजीब नाम दिया जाना चाहिए ... बस उस फ़ाइल का नाम बदलने के लिए जो आप चाहते हैं वह चाल करेगा। वास्तव में डाउनलोड की गई फ़ाइल वह फ़ाइल है जिसे आप केवल अजीब नाम और फ़ाइल प्रकार विशेषता के बिना चाहते थे।


-2

इस प्रकार के डाउनलोड के लिए सबसे आसान और सबसे गारंटीकृत तरीका है Google क्रोम के डेवलपर टूल का उपयोग करना।

  • डेवलपर टूल खोलने के लिए F12 दबाएं
  • नेटवर्क टैब पर जाएं
  • डाउनलोड शुरू करने के लिए डाउनलोड लिंक दबाएं
  • नेटवर्क ईवेंट में डाउनलोड ईवेंट खोजें
  • लाइन पर राइट क्लिक करें और यदि आप चाहते हैं तो "Copy as cURL (bash)" या विंडो चुनें

  • यूआरएल इस तरह दिखेगा:

    curl "http://yoururl.com/yourfile" -H "Pragma: no-cache" -H "Origin: http://yoururl.com" -H "Accept-Encoding: gzip, deflate" -H "Accept-Language: en-US;q=0.8,en;q=0.6,fr;q=0.4" -H "User-Agent: Mozilla/5.0 bla bla" -H "Content-Type: text/plain;charset=UTF-8" -H "Accept: */*" -H "Cache-Control: max-age=0" -H "Referer: http://yoururl.com/downloadpage" -H "Cookie: e07214fb60a1a; _ga=98987; " -H "Connection: keep-alive"
    
  • बदलें curlके साथwget

  • बदलें -H "some headers"के साथ--header="some headers"
  • अपनी बैश विंडो में पेस्ट करें और -oपैरामीटर जोड़ें । (यदि आप इस पैरामीटर को नहीं जोड़ते हैं, तो आउटपुट कंसोल पर प्रिंट हो जाएगा।
  • प्रेस दर्ज करें और अपने डाउनलोड का आनंद लें।

OP ने wget के साथ उपयोग का अनुरोध किया।
Twerdster

आप कर्ल से विंग में आसानी से बदल सकते हैं: stackoverflow.com/a/25044709/531524
Hüseyin Yağlı
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.