-
Notifications
You must be signed in to change notification settings - Fork 13
/
Copy pathextract_bible_by_book.py
44 lines (37 loc) · 1.29 KB
/
extract_bible_by_book.py
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
44
import json
import re
import os
os.mkdir("by_book")
with open("json/ESV.json") as file:
data = json.load(file)
books = data["books"]
book_index = 1
for book_title in books:
file_title = str.replace(book_title, " ", "_")
file_title = f"{book_index:02d}_{file_title}"
book = books[f"{book_title}"]
chapters = [chapter for chapter in book]
fulltexts = []
for chapter in chapters:
verses = [verse for verse in chapter]
indeces = [verses.index(verse) for verse in chapter]
verses = []
for index in indeces:
chunks = [i for i in chapter[index]]
verse = " ".join([chunk[0]
for chunk in chunks if not isinstance(chunk[0], list)])
verse = re.sub(r'\s([?.,;!"](?:\s|$))', r'\1', verse)
verses.append(verse)
fulltexts.append(verses)
with open(f"by_book/{file_title}.md", "w") as file:
file.write(f"# {book_title}\n\n")
chap_index = 1
for chapter in fulltexts:
file.write(f"## Chapter {chap_index}\n\n")
verse_index = 1
for verse in chapter:
file.write(f"{verse_index}. {verse}\n")
verse_index += 1
file.write("\n")
chap_index += 1
book_index += 1