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.
由cor-el于
被采纳的解决方案
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
所有回复 (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?
由palm22180于
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).