Skip to content

Commit a07d476

Browse files
committed
Auto stash before checking out "HEAD"
1 parent 28c1e15 commit a07d476

File tree

2 files changed

+51
-0
lines changed

2 files changed

+51
-0
lines changed

filesToTranslate.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"files": ["./nl.javascript.info/1-js/02-first-steps/04-variables/1-hello-variables/solution.md", "./nl.javascript.info/1-js/02-first-steps/04-variables/1-hello-variables/task.md", "./nl.javascript.info/1-js/02-first-steps/04-variables/2-declare-variables/solution.md", "./nl.javascript.info/1-js/02-first-steps/04-variables/2-declare-variables/task.md", "./nl.javascript.info/1-js/02-first-steps/04-variables/3-uppercast-constant/solution.md", "./nl.javascript.info/1-js/02-first-steps/04-variables/3-uppercast-constant/task.md", "./nl.javascript.info/1-js/02-first-steps/04-variables/article.md"]}

translateScript.js

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
const json = require('./filesToTranslate.json');
2+
fs = require('fs');
3+
4+
global.fetch = require("node-fetch");
5+
const puppeteer = require('puppeteer');
6+
7+
async function translate(incomingText) {
8+
const browser = await puppeteer.launch({ headless: false });
9+
const page = await browser.newPage();
10+
await page.goto('https://www.deepl.com/translator', {waitUntil: 'domcontentloaded'});
11+
12+
await page.evaluate(() => { localStorage.setItem('LMT_preferredLangs', 'EN,NL'); });
13+
await page.evaluate(() => { localStorage.setItem('LMT_preferredLangVariants', 'en-US'); });
14+
await page.evaluate(() => { localStorage.setItem('LMT_selectedTargetLang', 'NL'); });
15+
16+
await page.waitForSelector('.dl_cookieBanner--buttonAll');
17+
await page.click('.dl_cookieBanner--buttonAll');
18+
await page.evaluate(val => document.querySelector('.lmt__source_textarea').value = val, incomingText);
19+
await page.click('.lmt__language_select--target');
20+
await page.evaluate(() => {
21+
[...document.querySelectorAll('.lmt__language_select__menu button')].find(element => element.textContent === 'Dutch').click();
22+
});
23+
await page.waitFor(5000);
24+
let translatedText = await page.$eval('.lmt__target_textarea', el => el.value);
25+
await browser.close();
26+
return [incomingText, translatedText];
27+
}
28+
29+
function startTranslating(url, file){
30+
fetch(url)
31+
.then(response => response.text())
32+
.then(response => translate(response))
33+
.then(response => {
34+
fs.writeFile(file, `${response[0]}\n====================\n${response[1]}`, function (err) {
35+
if (err) return console.log("schrijven mislukt! " + err);
36+
console.log('schrijven gelukt');
37+
});
38+
})
39+
.catch(err => console.log(err));
40+
}
41+
42+
function fetchJSON(){
43+
let files = json.files;
44+
files.forEach(el => {
45+
//console.log();
46+
startTranslating("https://raw.githubusercontent.com/javascript-tutorial/nl.javascript.info/master/"+el.slice(21, el.length), "." + el.slice(20, el.length))
47+
});
48+
}
49+
50+
fetchJSON();

0 commit comments

Comments
 (0)