Bezpośrednie pobieranie Dysku Google dla dużych plików


14

Próbuję na Dysku Google, w jaki sposób można połączyć bezpośrednio z plikiem „Pobierz” plik zip i nie wyświetlać zawartości? ale to nie działa. Nie jestem pewien, jak powtórzyć pytanie. Pobiera „plik jest zbyt duży, aby go przeskanować antywirusowo”, ostrzegając HTML, a kiedy próbuję https://drive.google.com/uc?export=download&confirm=no_antivirus&id=, nadal go pobiera.

Edycja: Próbowałem to wget --save-cookies /tmp/cookie.txt --load-cookies /tmp/cookie.txtpowtórzyć, wciąż nie ma kości.


1
Czy kiedykolwiek to rozgryzłeś? Występuje ten sam problem z większymi plikami.
Travis Reeder

Nie, zrezygnowałem z tego.
chx

Bardzo podobne pytanie z Przepełnienia stosu, z dobrymi odpowiedziami: „ wget / curl duży plik z dysku Google
Tanius

Odpowiedzi:


4

Plik cookie musi być zgodny z parametrem „potwierdź” i jest zmieniany przy każdym wywołaniu.

Oto skrypt perla do pobierania tych plików w sposób nienadzorowany.

W przypadku adresu URL ze strony ostrzeżenia o skanowaniu antywirusowym ( https://drive.google.com/uc?export=download&confirm=s5vl&id=XXX ) ten kod powinien wystarczyć:

#!/usr/bin/perl
use strict;
my $TEMP='/tmp';my $COMMAND;my $confirm;
sub execute_command();
my $URL=shift;my $FILENAME=shift;
$FILENAME='gdown' if $FILENAME eq '';
execute_command();
if (-s $FILENAME < 100000) { # only if file isn't the download yet
    open fFILENAME, '<', $FILENAME;
    foreach (<fFILENAME>) {
        if (/confirm=([^;&]+)/) {
            $confirm=$1; last;   }    }
    close fFILENAME;
    $URL=~s/confirm=([^;&]+)/confirm=$confirm/;
    execute_command();    }
sub execute_command() {
    $COMMAND="wget --no-check-certificate --load-cookie $TEMP/cookie.txt --save-cookie $TEMP/cookie.txt \"$URL\"";
    $COMMAND.=" -O \"$FILENAME\"" if $FILENAME ne '';
    `$COMMAND`; return 1;    }

Stworzyłem skrypt Pythona, a mój plik cookie pasuje do parametru potwierdzenia w adresie URL. Jednak to nie działa: jestem przekierowywany na stronę zatytułowaną „Zaloguj się - konta Google”.
Benjamin Toueg

Benjamin: może być konieczne dwukrotne przetworzenie adresu URL ... zobacz, jak skrypt wywołuje execute_command () dwa razy.
circulosmeos,

6

Po spędzeniu wielu niezliczonych godzin próbując uzyskać bezpośredni link do pobrania, który omija skanowanie w poszukiwaniu wirusów, w końcu zorientowałem się, że przypadkiem. Adres URL w poniższym formacie wraz z kluczem API Google pominie skanowanie antywirusowe. Nie mogłem znaleźć tego udokumentowanego nigdzie ( tutaj jest oficjalny dokument ), więc używaj na własne ryzyko, ponieważ przyszłe aktualizacje mogą go zepsuć. https://www.googleapis.com/drive/v3/files/fileid/?key=yourapikey&alt=media


0

Spróbuj tego

Możesz pobrać te pliki na komputer w następujących formatach:

For documents: HTML, RTF, Word, Open Office, PDF, Text file.
For spreadsheets: CSV, HTML, ODS, PDF, XLS, TXT (only for a single sheet)
For presentations: PDF, PPTX, TXT
For drawings: PNG, JPEG, SVG, PDF

Pobierz plik na komputer z Dysku Google

Click the checkbox(es) next to the item(s) that you'd like to download.
Expand the More drop-down menu, and select Download...
Select a file format to which you'd like convert and download your item, such as Microsoft Word. If you select multiple items, they'll be

skompresowany do pliku .zip Kliknij Pobierz.

Możesz także pobrać plik podczas jego przeglądania. Przejdź do menu Plik, wskaż kursorem myszy opcję Pobierz jako i wybierz format pliku.

Jeśli łączny plik jest większy niż 2 GB, nie sądzę, że będzie można pobrać bez dzielenia na partie.


niestety, jest to plik binarny :( żaden z powyższych.
chx

0

Ok, Google używa następującego formatu adresu URL do końcowego linku do pobrania:

https://drive.google.com/uc?export=download&confirm=s5vl&id=XXX

Zwróć uwagę na parametr potwierdzenia, który wydaje się zmieniać za każdym razem, gdy przejdziesz do oryginalnego linku. Może to jest krótkotrwały token lub dopasowanie cookie lub coś takiego?


0

Po prostu tworzę javascript, aby automatycznie przechwytywał link oraz pobierał i zamykał kartę za pomocą tampermonkey .

// ==UserScript==
// @name         Bypass Google drive virus scan
// @namespace    SmartManoj
// @version      0.1
// @description  Quickly get the download link
// @author       SmartManoj
// @match        https://drive.google.com/uc?id=*&export=download*
// @grant        none
// ==/UserScript==

function sleep(ms) {
  return new Promise(resolve => setTimeout(resolve, ms));
}

async function demo() {
    await sleep(5000);
    window.close();
}

(function() {
    location.replace(document.getElementById("uc-download-link").href);
    demo();
})();
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.