Skip to content

Commit

Permalink
fix trackers database update
Browse files Browse the repository at this point in the history
  • Loading branch information
remusao committed Jul 29, 2019
1 parent 8ca6bcf commit 69471e2
Show file tree
Hide file tree
Showing 5 changed files with 69 additions and 32,252 deletions.
17 changes: 3 additions & 14 deletions background.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { chrome, browser } from './globals';
import trackerData from './whotracksme.json';
import companyHostnameMapping from './whotracksme.json';
import {
cleanStorage,
saveCookies,
Expand Down Expand Up @@ -191,17 +191,6 @@ let cookieTable = {};

const parentTabMapping = {};

// Create a mapping of hostname to company name
const company_hostname_mapping = {}

Object.values(trackerData.trackers).forEach((info) => {
const company_name = info.company_id === null ? 'Unknown' : trackerData.companies[info.company_id].name;
info.domains.forEach(y => {
trackerDomains.push(y);
company_hostname_mapping[y] = company_name;
});
});

// Adding company name and tracker host.
// Structure is:
// refTP[url][company_name] => ['trackerdomain1', 'trackerdomain2'];
Expand Down Expand Up @@ -588,9 +577,9 @@ function parseQueryString(q) {
}

function getCompanyName(hostname, partialHostName) {
if (company_hostname_mapping.hasOwnProperty(hostname) || company_hostname_mapping.hasOwnProperty(partialHostName)) {
if (companyHostnameMapping.hasOwnProperty(hostname) || companyHostnameMapping.hasOwnProperty(partialHostName)) {
return {
company_name: company_hostname_mapping[hostname] || company_hostname_mapping[partialHostName],
company_name: companyHostnameMapping[hostname] || companyHostnameMapping[partialHostName],
// tracker_company: e,
// tracker_id: trackerData[e].id,
tracker_host: hostname
Expand Down
38 changes: 38 additions & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
"watch": "rollup --config rollup.config.js --watch",
"lint": "web-ext lint",
"start": "concurrently 'npm run watch' 'web-ext run --source-dir .'",
"update-wtm": "curl 'https://whotracks.me/data/trackerdb.json' > whotracksme.json"
"update-wtm": "node updater.js"
},
"repository": {
"type": "git",
Expand All @@ -33,6 +33,7 @@
},
"devDependencies": {
"@ampproject/rollup-plugin-closure-compiler": "^0.10.0",
"axios": "^0.19.0",
"concurrently": "^4.1.1",
"rollup": "^1.17.0",
"rollup-plugin-json": "^4.0.0",
Expand Down
25 changes: 25 additions & 0 deletions updater.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
const fs = require("fs");
const axios = require("axios");

async function update() {
// Fetch latest trackers data from whotracks.me
const { trackers, companies } = (await axios.get(
"https://whotracks.me/data/trackerdb.json"
)).data;

// Create mapping from tracker domain to company name
const companyMapping = {};
for (const [tracker, { company_id, domains }] of Object.entries(trackers)) {
const companyName = (companies[company_id] || { name: "unknown" }).name;
for (const domain of domains) {
companyMapping[domain] = companyName;
}
}

// Save mapping on disk
fs.writeFileSync("whotracksme.json", JSON.stringify(companyMapping), {
encoding: "utf-8"
});
}

update();
Loading

0 comments on commit 69471e2

Please sign in to comment.