-
Notifications
You must be signed in to change notification settings - Fork 1
/
getLocalVerseData.js
43 lines (38 loc) · 1.45 KB
/
getLocalVerseData.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
const fs = require("fs")
const axios = require("axios")
let jsdom = require('jsdom')
module.exports = async(book, chapter, verse) => {
return new Promise((resolve, reject) => {
let file = fs.readFileSync(`./BibleHub/parallel/html/${book}/${chapter}/${verse}.htm`)
const {JSDOM} = jsdom
let {document} = (new JSDOM(file)).window
let data = []
const word = [...document.querySelectorAll(".word")].map(e => e.textContent)
const grk = [...document.querySelectorAll(".grk")].map(e => e.textContent)
const heb = [...document.querySelectorAll(".heb")].map(e => e.textContent)
const translit = [...document.querySelectorAll(".translit")].map(e => e.textContent)
const parse = [...document.querySelectorAll(".parse")].map(e => e.textContent)
const str = [...document.querySelectorAll(".str")].map(e => e.textContent)
const str2 = [...document.querySelectorAll(".str2")].map(e => e.textContent)
const num = [...document.querySelectorAll(".str")].map(e => {
if(e.textContent.match(/\d+/g)) return parseInt(e.textContent.match(/\d+/g)[0]);
else{
// console.log(`FAILURE AT: ${book} ${chapter}:${verse}`);
return 0;
}
})
for(let i=0; i<word.length;i++){
data.push({
word: word[i],
grk: grk[i],
heb: heb[i],
translit: translit[i],
parse: parse[i],
str: str[i],
str2: str2[i],
num: num[i]
})
}
resolve(data)
})
}