新华字典:pwxcoo/chinese-xinhua 中华新华字典数据库。包括歇后语,成语,词语,汉字。
repo:https://gitcode.com/gh_mirrors/ch/chinese-xinhua
下载到本地
git clone https://gitcode.com/gh_mirrors/ch/chinese-xinhua
读取文档
python
import json
import os
DATA_PATH = os.path.join(os.path.dirname(__file__), '..', 'chinese-xinhua', 'data', 'word.json')
def _load_data():
with open(DATA_PATH, 'r', encoding='utf-8') as f:
return json.load(f)
def get_hanzi(char):
"""获取指定汉字的拼音、意思和笔画数
Args:
char: 汉字字符
Returns:
dict: 包含 pinyin, explanation, strokes 的字典,如果未找到返回 None
"""
data = _load_data()
for item in data:
if item.get('word') == char:
return {
'pinyin': item.get('pinyin', ''),
'explanation': item.get('explanation', ''),
'strokes': item.get('strokes', '')
}
return None
if __name__ == '__main__':
result = get_hanzi('汉')
print(result)
注意需要将chinese-xinhua项目的data目录放置到hanzi.py所在的目录下。
调用
python
from hanzi import get_hanzi
result = get_hanzi("汉")
print(result)
测试一下:
>>> from hanzi import get_hanzi
>>> result = get_hanzi("汉")
>>> print(result)
{'pinyin': 'hàn', 'explanation': '菡萏 (形声。从苃,函声。菡萏。本义荷花) 同本义 \n\n 迨至菡萏成花。--明·李渔《闲情偶寄 ·种植部》\n\n 菡萏\n\n \n\n 汉(漢)hàn\n\n ⒈朝代名\n\n ①汉朝(西汉、东汉),公元前206-公元220年。第一代君主是刘邦。\n\n ②五代之一,又称"后汉",公元947-950年。第一代君主是刘知远。\n\n ⒉男子,男人李老~。英雄好~。\n\n ⒊银河,也叫银~ 或天~气冲霄~。\n\n ⒋"汉语"的简称英~字典。\n\n ⒌汉水,上流在陕西省,流到汉口入长江。\n\n ⒍\n\n ⒎', 'strokes': '5'}