Google Drive

From Archiveteam
Revision as of 15:21, 28 May 2024 by OrIdow6 (talk | contribs) (→‎Requests made by the file viewer page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Google Drive
Google drive logo.png
Status Special case (Technically files are only becoming inaccessible)
Archiving status On hiatus
Archiving type Unknown
Project source google-drive-grab, google-drive-items
Project tracker google-drive
IRC channel #googlecrash (on hackint)
Data[how to use] archiveteam_googledrive

Google Drive is a filehosting service, a la Dropbox, run by Google (not to be confused with Google Cloud Storage and similar more technical storage solutions). It is popular both for personal storage and for sharing of files.

2021 grab

Google Drive IDs are not random (anecdotally, IDs of folders in the same tree often share long parts), which makes them predictable, a problem which Google had been trying to rectify across its products (others of which have similar issues) throughout 2021[1]. As such, on September 13, 2021, Google required that, in order to access files and folders, users either have permissions tied to their signed-in Google Accounts, or access the item through a URL with a random per-item parameter called resourceKey, apparently introduced in 2021.[2] The result of this will be that at least millions of links across the Web will effectively break. Docs, Sheets and Slides will be exempted from this update [3] Apart from the longening links, the main threat was the users deleting files. Files are usually deleted to fit the users 15 GB limit.


The grab script had 3 item types, folder:, file:, and user:. It was intended that all folder: items be run first, to get a pool (through backfeed) of file: items, that can be randomly sampled to determine a size threshold that the Internet Archive will accept; then files will be run. Users contain some user metadata but not links to files or folders.

Playback is theoretically possible with a flexible, POST-capable Wayback Machine, but this does not yet exist. In the meantime, it may be possible to get files with vanilla wget or similar from the WBM.


(This is based on OrIdow6's very vague memories) It appeared that there were 2 types of Google Drive items, those that automatically got a redirect to a version with a resourceKey, and those that didn't. There was speculation that the latter, which had more random-looking IDs, would not suffer in the quasi-removal.

Getting your files

The rudimentary downloader for the 2021 grab is now on Github.


Of the native types:

  • Docs may be public, this is a good description of the formats available for downloading.
  • Sheets, slides, drawings, Jamboard ditto, different formats.
  • Forms are not downloadable in their totality but public ones may be accessed at[ID]/viewform (along with some other, near-identical pages). If they have public results, those will be visible at[ID]/viewanalytics.
  • My Maps by default just display a preview image. Seemingly not indicated from the Drive interface, at least without an account, is that they can be fully viewed at[ID].
  • Sites are not "published" in a way that is publicly connected to their Drive entry[4]. If in Drive folders, they will be publicly listed there, but when accessed anonymously they just take you to an editor page that gives a 401, even when published. Preview images, however, are still publicly shown.

Additionally, not (for our purposes) native formats are:

  • Colab, which is just a static file with a special editor, e.g. here
  • Google Keep, which is "part of the... Google Docs Editors suite"[5] but does not seem to be accessible from Drive.

URLs like this, with "pubhtml" or this with just "pub" seem to be the result of "publishing" a file. These need JS, but only inline JS, and their images are in img tags, so they do not need any special treatment.

"htmlview" URLs also exist and seem to use the same IDs as normal "view" URLs (at least for sheets).

Requests made by the file viewer page

For instance, using some random batch file ,

Can be blocked in the Firefox debugger without issue: