mirror of
https://github.com/ArchiveBox/ArchiveBox.git
synced 2026-01-04 09:55:33 +10:00
Deleted dead/duplicate hooks: - wget/on_Crawl__10_install_wget.py (duplicate of __10_wget_validate_config.py) - chrome/on_Crawl__00_chrome_install.py (simpler version, kept full one) - chrome/on_Crawl__20_chrome_launch.bg.js (legacy, kept __30 version) - singlefile/on_Crawl__20_install_singlefile_extension.js (disabled/dead) - istilldontcareaboutcookies/on_Crawl__20_install_*.js (legacy) - ublock/on_Crawl__03_ublock.js (legacy, kept __20 version) - Entire captcha2/ plugin (legacy version of twocaptcha/) Renamed hooks to follow consistent pattern: on_Crawl__XX_<plugin>_<action>.<ext> Priority bands: 00-09: Binary/extension installation 10-19: Config validation 20-29: Browser launch and post-launch config Final hooks: 00 ripgrep_install.py, 01 chrome_install.py 02 istilldontcareaboutcookies_install.js 03 ublock_install.js, 04 singlefile_install.js 05 twocaptcha_install.js 10 chrome_validate.py, 11 wget_validate.py 20 chrome_launch.bg.js, 25 twocaptcha_config.js
61 lines
1.7 KiB
JavaScript
Executable File
61 lines
1.7 KiB
JavaScript
Executable File
#!/usr/bin/env node
|
|
/**
|
|
* uBlock Origin Extension Plugin
|
|
*
|
|
* Installs and configures the uBlock Origin Chrome extension for ad blocking
|
|
* and privacy protection during page archiving.
|
|
*
|
|
* Extension: https://chromewebstore.google.com/detail/cjpalhdlnbpafiamejdnhcphjbkeiagm
|
|
*
|
|
* Priority: 03 (early) - Must install before Chrome session starts at Crawl level
|
|
* Hook: on_Crawl (runs once per crawl, not per snapshot)
|
|
*
|
|
* This extension automatically:
|
|
* - Blocks ads, trackers, and malware domains
|
|
* - Reduces page load time and bandwidth usage
|
|
* - Improves privacy during archiving
|
|
* - Removes clutter from archived pages
|
|
* - Uses efficient blocking with filter lists
|
|
*/
|
|
|
|
// Import extension utilities
|
|
const { installExtensionWithCache } = require('../chrome/chrome_utils.js');
|
|
|
|
// Extension metadata
|
|
const EXTENSION = {
|
|
webstore_id: 'cjpalhdlnbpafiamejdnhcphjbkeiagm',
|
|
name: 'ublock',
|
|
};
|
|
|
|
/**
|
|
* Main entry point - install extension before archiving
|
|
*
|
|
* Note: uBlock Origin works automatically with default filter lists.
|
|
* No configuration needed - blocks ads, trackers, and malware domains out of the box.
|
|
*/
|
|
async function main() {
|
|
const extension = await installExtensionWithCache(EXTENSION);
|
|
|
|
if (extension) {
|
|
console.log('[+] Ads and trackers will be blocked during archiving');
|
|
}
|
|
|
|
return extension;
|
|
}
|
|
|
|
// Export functions for use by other plugins
|
|
module.exports = {
|
|
EXTENSION,
|
|
};
|
|
|
|
// Run if executed directly
|
|
if (require.main === module) {
|
|
main().then(() => {
|
|
console.log('[✓] uBlock Origin extension setup complete');
|
|
process.exit(0);
|
|
}).catch(err => {
|
|
console.error('[❌] uBlock Origin extension setup failed:', err);
|
|
process.exit(1);
|
|
});
|
|
}
|