| Auto-Downloder Chrome Extension | September 18th, 2021 | 
| comments, tech | 
- Make a folder somewhere for a browser extension. 
- 
In that folder, make manifest.jsonwith contents like:{ "name": "Downloader", "description": "Downloads stuff", "version": "1.0", "manifest_version": 3, "permissions": [ "activeTab", "downloads" ], "background": { "service_worker": "background.js" }, "content_scripts": [{ "matches": [ "https://example.com/path/*", ], "js": ["content_script.js"] }] }
- 
In content_script.jsput:// This file extracts what you want from the page // and asks the background script to save it. // You write the code to extract what you want. const yourStringToSave = yourFunctionToExtractFromPage(); chrome.runtime.sendMessage( /* extension id not needed */ undefined, [fileNameToUse, yourStringToSave]);
- 
In background.jsput:// This file receives messages from the content // script and puts them in your Dowloads folder. function makeDataUrl(body) { // We use a data: url because Chrome has // trouble with object URLs in Incognito. return "data:application/json;base64," + btoa(unescape(encodeURIComponent(body))); } chrome.runtime.onMessage.addListener( function(message) { const fname = message[0]; const body = message[1]; chrome.downloads.download({ conflictAction: "overwrite", filename: fname, url: makeDataUrl(body), }); });
- Visit - chrome://extensions
- Enable Developer Mode 
- Click the "Load unpacked" and select the extension directory 
- If you need it in Incognito, click "Details" on the extension card and then enable "Allow in Incognito". 
Example code: github.
(And, yes, this is how Facebook comments are back.)
Comment via: facebook, lesswrong, substack