def mem(): form = ReciteForm() if form.validate_on_submit(): b = Bible() actual = b.get_verse(request.args.get("book").lower(), request.args.get("chapter"), request.args.get("verse"), "esv") typed = form.text.data d = Diff(actual, typed) html = d.generate_html() return html return render_template('mem.html', form=form, book=request.args.get("book"), chapter=request.args.get("chapter"), verse=request.args.get("verse"))
class SelectVerseForm(FlaskForm): bible = Bible() book_choices = [] for book in bible.books(): book_choices.append((book, bible.capitalize(book))) book = SelectField('Book', choices=book_choices) chapter = IntegerField('Chapter') verse = IntegerField('Verse') version_choices = [] for version in bible.versions(): version_choices.append((version, bible.version_name(version))) version = SelectField('Version', choices=version_choices, default="esv") submit = SubmitField('Start') def validate(self): max_chapter = self.bible.num_chapters(self.book.data) self.chapter.validators = [NumberRange(min=1, max=max_chapter)] if self.chapter.data and self.chapter.data <= max_chapter: max_verse = self.bible.num_verses(self.book.data, self.chapter.data) self.verse.validators = [NumberRange(min=1, max=max_verse)] return super().validate()
def func(): b = Bible("ESV") pat = re.compile(r"\d+,?\d+") verse, bkname = b.get("Psalms", "1", "1") print verse print bkname nums = defaultdict(int) for k in b.books.keys(): for c in b.books[k].keys(): for v in b.books[k][c].keys(): versetext = b.books[k][c][v] groups = re.findall(pat, versetext) if len(groups) > 0: print groups, versetext for g in groups: nums[g[0]] += 1 print nums import matplotlib.pyplot as plt from numpy.random import normal gaussian_numbers = normal(size=10) print gaussian_numbers ln = nums.items() sln = sorted(ln) print sln sln = sln[1:] plt.bar(map(int, map(lambda p: p[0], sln)), map(lambda p: p[1], sln)) plt.title("Benford's Law in Bible Numbers") plt.xlabel("Initial Digit") plt.ylabel("Count") plt.show()
def verse(request, book, chapter, verse): bible = Bible() verse = bible.get_verse(book, chapter, verse) return HttpResponse(json.dumps(verse), mimetype='application/json')
* WISDOM = 3 * PROPHECY = 4 * GOSPEL = 5 * EPISTLE = 6 * APOCALYPSE = 7 TestamentType (enum) * OLD_TESTAMENT * NEW_TESTAMENT * NONE ''' if __name__ == "__main__": kjv = Bible("data/kjv.txt", "|") # book gen = kjv.books[0] print(gen) # chapter gen1 = gen.chapters[0] print(gen1) # verse gen1_1 = gen1.verses[0] print(gen1_1) # search refs = kjv.search("light")
pickle.dump(bdict, b) b.close() if __name__ == "__main__": exitwords = ["q", "exit", "quit"] #picklestuff() #b = open("books.pkl", "rb") #bdict = pickle.load(b) #b.close() bdict = {} b = Bible("KJV.txt") bdict["KJV"] = b def chooseversion(): while True: s = input("Enter version: (l to list versions, can also enter comma " "separated to compare, all for all versions) ") if s == "l": print("bible version list") vs = os.listdir(bibledir) for v in vs: print(v) else: if s == "all": lst = bdict.keys() else:
from flask import Flask, request from bible import Bible from checkTime import checkTime from twilio.twiml.messaging_response import MessagingResponse b = Bible() verse = "" verse = b.verse_gen() day = 4 day_af = 4 app = Flask(__name__) @app.route("/") def Hello(): return "hello, world" @app.route('/incoming', methods=['POST']) def bot(): incoming_msg = request.values.get('Body', '').lower() resp = MessagingResponse() msg = resp.message() responded = False global verse, day if 'verse' in incoming_msg: global day_af if day != day_af: msg.body(verse) responded = True
from bible import Bible bible = Bible() print bible.verse_lookup("Romans", 8, "28")
from bible import Bible import string import re #検索単語の入力 buf = input('探したい単語を入力:') #ファイル読込 try: text = Bible.read() except FileNotFoundError(): print('error') exit() #行単位での読込 arry = text.readlines() dic = {} pattren = "[0-9]+" #単語を辞書に登録 for row in arry: #lis = row.split() lis = re.split(' |\n|\'|-', row) for item in lis: item = item.translate(str.maketrans('', '', string.punctuation)) flag = re.fullmatch(pattren, item) if flag is None and item != '': if item in dic.keys():
pickle.dump(bdict, b) b.close() if __name__ == "__main__": exitwords = ["q", "exit", "quit"] #picklestuff() #b = open("books.pkl", "rb") #bdict = pickle.load(b) #b.close() bdict = {} b = Bible("KJV.txt") bdict["KJV"] = b def chooseversion(): while True: s = input( "Enter version: (l to list versions, can also enter comma " "separated to compare, all for all versions) ") if s == "l": print("bible version list") vs = os.listdir(bibledir) for v in vs: print(v) else: if s == "all": lst = bdict.keys()