Where does Firefox store SQLITE download history
I normally choose my download location and if they're zip I'll delete them after extract.
The problem is currently I can't find any way to get where did I put my downloaded files if it's not there.
BUT!!! In order to know the files aren't there, Firefox has to know where did I put them.
I searched the home folder but nothing named `download` is in the folder.
I asked a question for what should I do https://support.mozilla.org/en-US/que.../1312757 but doesn't get anything remotely useful.
Modified
الحل المُختار
That data is stored as a "downloads/destinationFileURI" annotation in places.sqlite. I don't know of a way to access this data directly in the user interface.
You can run this code in the Browser Console to retrieve the annotation map and check the "downloads/destinationFileURI" array.
const DESTINATIONFILEURI_ANNO = "downloads/destinationFileURI"; const METADATA_ANNO = "downloads/metaData"; let pageAnnos = await PlacesUtils.history.fetchAnnotatedPages([METADATA_ANNO,DESTINATIONFILEURI_ANNO,]);
- "3-bar" menu button or Tools -> Web Developer
- https://developer.mozilla.org/en-US/docs/Tools/Browser_Console
All Replies (3)
الحل المُختار
That data is stored as a "downloads/destinationFileURI" annotation in places.sqlite. I don't know of a way to access this data directly in the user interface.
You can run this code in the Browser Console to retrieve the annotation map and check the "downloads/destinationFileURI" array.
const DESTINATIONFILEURI_ANNO = "downloads/destinationFileURI"; const METADATA_ANNO = "downloads/metaData"; let pageAnnos = await PlacesUtils.history.fetchAnnotatedPages([METADATA_ANNO,DESTINATIONFILEURI_ANNO,]);
- "3-bar" menu button or Tools -> Web Developer
- https://developer.mozilla.org/en-US/docs/Tools/Browser_Console
cor-el said
That data is stored as a "downloads/destinationFileURI" annotation in places.sqlite. I don't know of a way to access this data directly in the user interface. You can run this code in the Browser Console to retrieve the annotation map and check the "downloads/destinationFileURI" array.const DESTINATIONFILEURI_ANNO = "downloads/destinationFileURI"; const METADATA_ANNO = "downloads/metaData"; let pageAnnos = await PlacesUtils.history.fetchAnnotatedPages([METADATA_ANNO,DESTINATIONFILEURI_ANNO,]);
- "3-bar" menu button or Tools -> Web Developer
- https://developer.mozilla.org/en-US/docs/Tools/Browser_Console
Thanks for the reply. I didn't get the e-mail for some mysterious reasons but just ran across this problem again and remembered I have already asked this.
Anyway, the file is indeed in the `places.sqlite` but the table name is wrong.
It's actually in the `moz_annos`.
I don't write JS though, but I thought you can't access the storage using the frontend JS?
Modified
You can run privileged JavaScript code via the Browser Console and this allows to access such data. To enable the command line in the Console:
- select "Enable browser chrome and add-on debugging toolboxes" in the developer tools settings
- https://developer.mozilla.org/en-US/docs/Tools/Settings
I didn't mention a specific table in places.sqlite in my above reply. Yes, moz_annos stores the downloads as a special 'download' annotation defined in moz_anno_attributes (downloads/metaData, downloads/destinationFileURI, downloads/destinationFileName). The entries in moz_annos are linked to moz_places that stores the actual history entry (moz_places.id = moz_annos.place_id).