diff options
| author | Jan Tuomi <jan.tuomi@valuemotive.com> | 2021-02-03 18:39:16 +0200 |
|---|---|---|
| committer | Jan Tuomi <jan.tuomi@valuemotive.com> | 2021-02-03 18:39:16 +0200 |
| commit | 0bc0462b37b45ce5534208e068b701e3471813f2 (patch) | |
| tree | bed4ef58521b96bca3bde0d9706a8842c096414a /kanji_info_fetcher/jisho_client.py | |
| parent | 0cabed1a00e2ee16fafbfc1eb68945916209fc0e (diff) | |
Add example sentence if exists
Diffstat (limited to 'kanji_info_fetcher/jisho_client.py')
| -rw-r--r-- | kanji_info_fetcher/jisho_client.py | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/kanji_info_fetcher/jisho_client.py b/kanji_info_fetcher/jisho_client.py index e74412e..5dca87b 100644 --- a/kanji_info_fetcher/jisho_client.py +++ b/kanji_info_fetcher/jisho_client.py @@ -51,7 +51,7 @@ def inject_kanji_meanings(entries: list) -> list: return entries_with_meanings -def inject_english_translation(entries: list) -> list: +def inject_english_translation_and_note(entries: list) -> list: entries_with_translations = [] for index, entry in enumerate(entries): @@ -81,12 +81,25 @@ def inject_english_translation(entries: list) -> list: meaning_translations = meaning_wrapper.select(".meaning-wrapper .meaning-meaning") meaning_translations_texts = map(lambda e: e.text.strip(), meaning_translations) + meaning_sentences = meaning_wrapper.select(".sentence") + meaning_sentence = meaning_sentences[0] if len(meaning_sentences) > 0 else None + + if meaning_sentence is not None: + sentence_japanese_parts = meaning_sentence.select(".japanese .unlinked") + sentence_japanese_parts_texts = map(lambda e: e.text.strip(), sentence_japanese_parts) + sentence_japanese_text = "".join(sentence_japanese_parts_texts) + sentence_english_text = meaning_sentence.select(".english")[0].text.strip() + note_sentence = f"{sentence_japanese_text}<br>{sentence_english_text}" + else: + note_sentence = "" + meanings_zipped = zip(meaning_tag_abbrevs, meaning_translations_texts) - first_translation_pair = list(meanings_zipped)[0] - result = f"{first_translation_pair[0]} {first_translation_pair[1]}" + first_translation_tuple = list(meanings_zipped)[0] + result = f"{first_translation_tuple[0]} {first_translation_tuple[1]}" entry.english = result + entry.note = note_sentence entries_with_translations.append(entry) return entries_with_translations |
