コード例 #1
0
def test_wakati_furiagana():
    TESTS = [(u"変換前の漢字の脇に", u"変換前[へんかんまえ] の 漢字[かんじ] の 脇[わき] に")]
    kakasi = pykakasi.wakati()
    kakasi.setMode("f", True)
    converter = kakasi.getConverter()
    for case, result in TESTS:
        assert converter.do(case) == result
コード例 #2
0
ファイル: test_pykakasi.py プロジェクト: JRMeyer/pykakasi
 def test_wakati(self):
     TESTS = [(u"", u""), (u"交じり文", u"交じり 文"), (u"ひらがな交じり文", u"ひらがな 交じり 文"),
              (u"漢字とひらがな交じり文", u"漢字 とひらがな 交じり 文")]
     wakati = pykakasi.wakati()
     converter = wakati.getConverter()
     for case, result in TESTS:
         self.assertEqual(converter.do(case), result)
コード例 #3
0
def test_wakati():
    TESTS = [(u"", u""), (u"交じり文", u"交じり 文"), (u"ひらがな交じり文", u"ひらがな 交じり 文"),
             (u"漢字とひらがな交じり文", u"漢字 とひらがな 交じり 文")]
    wakati = pykakasi.wakati()
    converter = wakati.getConverter()
    for case, result in TESTS:
        assert converter.do(case) == result
コード例 #4
0
    def jpTokenizer(self, lyrics):

        wakati = pykakasi.wakati()
        kanjiTokenizer = wakati.getConverter()
        kajiTokenized = kanjiTokenizer.do(lyrics)

        return kajiTokenized
        pass
コード例 #5
0
    def test_wakati_constitution(self):

        original_text = u"日本国民は、正当に選挙された国会における代表者を通じて行動し、われらとわれらの子孫のために、諸国民との協和による成果と、わが国全土にわたつて自由のもたらす恵沢を確保し、政府の行為によつて再び戦争の惨禍が起ることのないやうにすることを決意し、ここに主権が国民に存することを宣言し、この憲法を確定する。そもそも国政は、国民の厳粛な信託によるものであつて、その権威は国民に由来し、その権力は国民の代表者がこれを行使し、その福利は国民がこれを享受する。これは人類普遍の原理であり、この憲法は、かかる原理に基くものである。われらは、これに反する一切の憲法、法令及び詔勅を排除する。"
        result = u"日本国民 は、 正当 に 選挙 された 国会 における 代表者 を 通じ て 行動 し、われらとわれらの 子孫 のために、 諸国民 との 協和 による 成果 と、わが 国 全土 にわたつて 自由 のもたらす 恵沢 を 確保 し、 政府 の 行為 によつて 再び 戦争 の 惨禍 が 起る ことのないやうにすることを 決意 し、ここに 主権 が 国民 に 存す ることを 宣言 し、この 憲法 を 確定す る。そもそも 国政 は、 国民 の 厳粛 な 信託 によるものであつて、その 権威 は 国民 に 由来 し、その 権力 は 国民 の 代表者 がこれを 行使 し、その 福利 は 国民 がこれを 享受 する。これは 人類普遍 の 原理 であり、この 憲法 は、かかる 原理 に 基く ものである。われらは、これに 反す る 一切 の 憲法 、 法令 及び 詔勅 を 排除 する。"

        wakati = pykakasi.wakati()
        converter = wakati.getConverter()
        self.maxDiff = None
        self.assertEqual(converter.do(original_text), result)
コード例 #6
0
ファイル: test_pykakasi.py プロジェクト: miurahr/pykakasi
 def test_wakati_furiagana(self):
     TESTS = [
         (u"変換前の漢字の脇に", u"変換前[へんかんまえ] の 漢字[かんじ] の 脇[わき] に")
     ]
     kakasi = pykakasi.wakati()
     kakasi.setMode("f", True)
     converter = kakasi.getConverter()
     for case, result in TESTS:
         self.assertEqual(converter.do(case), result)
コード例 #7
0
    def test_wakati_constitution(self):

        original_text = u"日本国民は、正当に選挙された国会における代表者を通じて行動し、われらとわれらの子孫のために、諸国民との協和による成果と、わが国全土にわたつて自由のもたらす恵沢を確保し、政府の行為によつて再び戦争の惨禍が起ることのないやうにすることを決意し、ここに主権が国民に存することを宣言し、この憲法を確定する。そもそも国政は、国民の厳粛な信託によるものであつて、その権威は国民に由来し、その権力は国民の代表者がこれを行使し、その福利は国民がこれを享受する。これは人類普遍の原理であり、この憲法は、かかる原理に基くものである。われらは、これに反する一切の憲法、法令及び詔勅を排除する。"
        result = u"日本国民 は、 正当 に 選挙 された 国会 における 代表者 を 通じ て 行動 し、われらとわれらの 子孫 のために、 諸国民 との 協和 による 成果 と、わが 国 全土 にわたつて 自由 のもたらす 恵沢 を 確保 し、 政府 の 行為 によつて 再び 戦争 の 惨禍 が 起る ことのないやうにすることを 決意 し、ここに 主権 が 国民 に 存す ることを 宣言 し、この 憲法 を 確定す る。そもそも 国政 は、 国民 の 厳粛 な 信託 によるものであつて、その 権威 は 国民 に 由来 し、その 権力 は 国民 の 代表者 がこれを 行使 し、その 福利 は 国民 がこれを 享受 する。これは 人類普遍 の 原理 であり、この 憲法 は、かかる 原理 に 基く ものである。われらは、これに 反す る 一切 の 憲法 、 法令 及び 詔勅 を 排除 する。"

        wakati = pykakasi.wakati()
        converter = wakati.getConverter()
        self.maxDiff = None
        self.assertEqual(converter.do(original_text), result)
コード例 #8
0
ファイル: basic_2.py プロジェクト: pacifictoy/pykakasi
 def test_wakati(self):
     TESTS = [
     (u"交じり文", u"交じり 文"),
     (u"ひらがな交じり文", u"ひらがな 交じり 文"),
     (u"漢字とひらがな交じり文", u"漢字 とひらがな 交じり 文")
     ]
     wakati = pykakasi.wakati()
     converter = wakati.getConverter()
     for case, result in TESTS:
         self.assertEqual(converter.do(case), result)
コード例 #9
0
def jp_text_to_roman(str):
    ''' Convert Japanese text to Roman/Alphabet text
    >>> jp_text_to_roman(u'今日のお天気は晴れです')
    'kyou noo tenki ha hare desu'
    >>> jp_text_to_roman(u'矢野浩二')
    'yano kouji'
    '''

    w = pykakasi.wakati()
    k = pykakasi.kakasi()
    k.setMode('H', 'a')  # Hiragana to Alphabet/Roman Letter
    k.setMode('K', 'a')  # Katakana to Alphabet/Roman Letter
    k.setMode('J', 'a')  # Kanji to Alphabet/Roman Letter
    k.setMode('C', False)  # Capitalize

    result = str
    for parser in [w, k]:
        c = parser.getConverter()
        result = c.do(result)

    return result
コード例 #10
0

@pytest.mark.parametrize("case, expected", [("", ""), ("カンタン", "かんたん"),
                                            ("ニャ", "にゃ")])
def test_kakasi_K2H(case, expected):
    kakasi = pykakasi.kakasi()
    kakasi.setMode("K", "H")
    converter = kakasi.getConverter()
    assert converter.do(case) == expected


@pytest.mark.parametrize("case, expected", [("", ""), ("交じり文", "交じり 文"),
                                            ("ひらがな交じり文", "ひらがな 交じり 文"),
                                            ("漢字とひらがな交じり文", "漢字 とひらがな 交じり 文")])
def test_wakati(case, expected):
    wakati = pykakasi.wakati()
    converter = wakati.getConverter()
    assert converter.do(case) == expected


def test_katakana_furiagana():
    TESTS = [(u"変換前の漢字の脇に", u"変換前[ヘンカンマエ]の漢字[カンジ]の脇[ワキ]に")]
    kakasi = pykakasi.kakasi()
    kakasi.setMode("H", None)
    kakasi.setMode("K", None)
    kakasi.setMode("J", "KF")
    kakasi.setMode("f", True)
    kakasi.setMode("s", False)
    kakasi.setMode("E", None)
    kakasi.setMode("a", None)
    converter = kakasi.getConverter()
コード例 #11
0
def getRoma(raw):
    minlen = 5
    kakasi2 = kakasi()
    kakasi2.setMode("H", "a")  # default: Hiragana no conversion
    kakasi2.setMode("K", "a")  # default: Katakana no conversion
    kakasi2.setMode("J", "a")  # default: Japanese no conversion
    kakasi2.setMode("r", "Hepburn")  # default: use Hepburn Roman table
    #kakasi.setMode("C", True) # add space default: no Separator
    kakasi2.setMode("s", True)  # add space default: no Separator
    kakasi2.setMode("c", False)  # capitalize default: no Capitalize
    conv = kakasi2.getConverter()
    text = raw
    #ftext = conv.do(text)
    #ftext = puncfix(ftext)
    #convk = kakasi.getConverter()
    segmenter = tinysegmenter.TinySegmenter()
    wakati2 = wakati()
    convw = wakati2.getConverter()
    resultw = convw.do(text)
    #print(resultw)
    arr = []

    resultw = resultw.split(' ')
    for i in range(len(resultw)):
        part = resultw[i]
        if len(part) > minlen:
            part = ' '.join(segmenter.tokenize(part))
        arr.append(conv.do(part))
    result = ' '.join(arr)
    result = multiple_replace(
        {
            '  ': ' ',
            'o-': 'ō',
            'a-': 'ā',
            'ou': 'ō',
            ' ha ': 'wa',
            'tsu te': 'tte',
            'tsu to': 'tto',
            'e-': 'ē',
            'i-': 'ī',
            ' - ': '~'
        }, result)
    ftext = result
    ''' doesnt work
	romaji_link = 'http://nihongo.j-talk.com/'


	r = requests.get(romaji_link)
	soup = BeautifulSoup(r.content, 'html.parser')
	d = soup.select('#formwrap > form > input[type="hidden"]')
	timestamp = d[0]['value']
	uniqid = d[1]['value']
	kanji = raw
	

	headers = {
		"User-Agent" : "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36"


	}
	data = {
		'timestamp' : timestamp,
		'uniqid' : uniqid,
		'kanji' : kanji,
		'Submit' : 'Translate Now',
		'kana_output' : 'romaji',
		'converter' : 'spacedrollover',
		'kanji_parts' : 'unchanged'
	}
	return requests.post(romaji_link, data = data, headers = headers)
	'''
    return ftext
コード例 #12
0
from pykakasi import kakasi, wakati

text = u"かな漢字交じり文"
kakasi = kakasi()
kakasi.setMode("H", "a")  # Hiragana to ascii, default: no conversion
kakasi.setMode("K", "a")  # Katakana to ascii, default: no conversion
kakasi.setMode("J", "a")  # Japanese to ascii, default: no conversion
kakasi.setMode("r", "Hepburn")  # default: use Hepburn Roman table
kakasi.setMode("s", True)  # add space, default: no separator
kakasi.setMode("C", True)  # capitalize, default: no capitalize
conv = kakasi.getConverter()
result = conv.do(text)
print(result)

wakati = wakati()
conv = wakati.getConverter()
result = conv.do(text)
print(result)
コード例 #13
0
import re
import sys
from ssl import SSLWantReadError

import requests
import keyboard
from pykakasi import kakasi, wakati
from bs4 import BeautifulSoup

REQUEST_SESSION = requests.session()
KAKASI = kakasi()
KAKASI.setMode("J", "H")
KAKASI_CONVERTER = KAKASI.getConverter()
WAKATI = wakati()
WAKATI_CONVERTER = WAKATI.getConverter()


def get_relevant_data(result_page):
    """Grabs the relevant information from the term's dictionary page and passes it to the hotkey
     function to be pasted into Anki."""
    kanji = result_page.find("div", class_="jp").text.replace("·", "")
    kanji = re.sub("(\(.{1,3}\))", "", kanji)
    try:
        kana = result_page.find("div", class_="furigana").text.replace(
            "[", "").replace("]", "").replace("·", "")
        kana = re.sub("(\(.{1,3}\))", "", kana)
    except AttributeError:
        kana = kanji
    romaji = result_page.find("div", class_="romaji hide").text
    term_definition = result_page.find(
        "div", class_="en").find("ol").text.rstrip().lstrip()