Wie kann ich mit wget Dateien und Ordner von Onedrive herunterladen?

17

Wie kann ich wget verwenden, um Dateien von Onedrive herunterzuladen? (und Batch-Dateien und ganze Ordner, falls möglich)

João José
quelle
1
Besuchen Sie superuser.com/questions/833199/… "Wie erhalte ich in Office 365 einen direkten Download-Link für ein in One Drive for Business gespeichertes Excel-Dokument?" um zu sehen, ob das Ihre Frage beantwortet.
Steve
Notwendig ist aber ein abonniertes Konto bei Office365.
João José
Verwenden Sie den OneDrive-Client, den jemand freundlicherweise für Linux geschrieben hat? github.com/xybu/onedrive-d-old
steve
Versuchen Sie, die Datei in Ihren Browser herunterzuladen, während der Download ausgeführt wird. Klicken Sie mit der rechten Maustaste und wählen Sie "Download-Link kopieren". Wenn Sie Glück haben, können Sie diesen Link setzen.
Baazigar
Ich habe Onedrive-d ausprobiert, konnte aber keine Arbeit erledigen. Wirklich, indem Sie den Link in die Datei kopieren und "wget" eingeben, funktioniert es, danke.
João José

Antworten:

12

Es gibt einen Weg, der für mich funktioniert (basierend auf diesem Tutorial: https://www.marstranslation.com/blog/how-to-make-direct-link-of-onedrive-files )

  1. Klicken Sie mit der rechten Maustaste auf die Datei, die Sie herunterladen möchten (von der Weboberfläche), und wählen Sie Einbetten.

  2. Drücken Sie auf "HTML-Code zum Einbetten dieser Datei generieren" .

  3. Kopieren Sie den Teil in der ""von src ist Ihr Link. Das wird so aussehen.

  4. Ersetzen embeddurch download. Dies sieht aus wie https://onedrive.live.com/download?cid=6EBB03E38A53ED3E&resid=6EBB03E38A53ED3E%21116&authkey=AC4lDqtLG8LqfiA .

  5. Füttere es wgetmit folgender Syntax:

    wget --no-check-certificate "https://onedrive.live.com/download?cid=6EBB03E38A53ED3E&resid=6EBB03E38A53ED3E%21116&authkey=AC4lDqtLG8LqfiA"
    
  6. Genießen.

Fedorov7890
quelle
Ok, jetzt ist alles an einem Ort)
Fedorov7890
Man darf nicht vergessen , den Link in setzen ""in wget. Ich habe und es hat nicht funktioniert.
Dushyant Bangal
@ Fedorov7890 Es funktioniert nicht. Ich habe versucht, einen Ordner herunterzuladen.
Nikhil
Es funktioniert nur für Dateien
Nikhil
5

Verwendung von Chrome (Firefox wird wahrscheinlich auch funktionieren).

  1. Öffnen DevTools
  2. Klicken Sie auf die Schaltfläche Herunterladen.
  3. Download aber sofort abbrechen
  4. Öffnen Sie die Registerkarte 'Netzwerk' in DevTools. Suchen Sie in DevTools nach 'Zip? AuthKey =' und öffnen Sie es (klicken Sie). Dies ist eine POST-Anfrage.
  5. Klicken Sie unten rechts neben "Formulardaten" auf "Quelle anzeigen".
  6. Konstruieren Sie den Befehl wie folgt:

 

wget --post-data='<raw form data>' '<Download URL>'

Oder:

wget --post-data='resIds=xxx&canary=yyy&authkey=zzz' 'https://cid--foobar.users.storage.live.com/downloadfiles/V1/Zip?authKey=zzz'

Dies funktioniert sogar auf einem anderen Host (mit einer anderen IP-Adresse).

ayke
quelle
Eine einfachere Variante (mit Firefox) ist: Tools-> Web Developer-> Network. Suchen Sie nach "Zip? AuthKey =", klicken Sie mit der rechten Maustaste darauf und wählen Sie "Als CURL kopieren". Kopieren-Einfügen in die Befehlszeile und Hinzufügen von '-o / path / to / some / file'. Natürlich wird cURL anstelle von wget verwendet, aber zu diesem Zweck funktionieren sie identisch
happyskeptic
1

Wir können auch CurlWget verwenden, das ich bereits mit OneDrive und Google Drive ausprobiert habe

Pedro Diamel Marrero Fernandez
quelle
1

Erstellen Sie einen Download-Link und fügen Sie "& download = 1" an das Ende an.

zB wenn der Link " https://some.host/:z:/x/personal/some_user/123456asdf?e=12345 " lautet

dann

wget "https://some.host/:z:/x/personal/some_user/123456asdf?e=12345&download=1"
amozejko
quelle
DIES! ist der einfachste Weg und es funktioniert.
Stefan Seidel