init
This commit is contained in:
43
scripts/import.js
Normal file
43
scripts/import.js
Normal file
@@ -0,0 +1,43 @@
|
||||
const { closeMongo } = require("../src/db/client");
|
||||
const { runImport } = require("../src/importer/importer");
|
||||
|
||||
function parseArgs(argv) {
|
||||
const options = {};
|
||||
|
||||
for (const arg of argv) {
|
||||
if (arg.startsWith("--datasets=")) {
|
||||
options.datasets = arg
|
||||
.slice("--datasets=".length)
|
||||
.split(",")
|
||||
.filter(Boolean);
|
||||
}
|
||||
|
||||
if (arg.startsWith("--languages=")) {
|
||||
options.languages = arg
|
||||
.slice("--languages=".length)
|
||||
.split(",")
|
||||
.filter(Boolean);
|
||||
}
|
||||
|
||||
if (arg.startsWith("--max-pages=")) {
|
||||
options.maxPages = Number(arg.slice("--max-pages=".length));
|
||||
}
|
||||
}
|
||||
|
||||
return options;
|
||||
}
|
||||
|
||||
async function main() {
|
||||
const options = parseArgs(process.argv.slice(2));
|
||||
const status = await runImport(options);
|
||||
console.log(JSON.stringify(status, null, 2));
|
||||
}
|
||||
|
||||
main()
|
||||
.catch((error) => {
|
||||
console.error(error);
|
||||
process.exitCode = 1;
|
||||
})
|
||||
.finally(async () => {
|
||||
await closeMongo();
|
||||
});
|
||||
Reference in New Issue
Block a user