日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

爬取词库,使用jieba分词库,自定义dict.txt文件+将搜狗词库.scel文件为.txt文件

發(fā)布時(shí)間:2024/7/5 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 爬取词库,使用jieba分词库,自定义dict.txt文件+将搜狗词库.scel文件为.txt文件 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一:爬取詞庫(kù),使用jieba分詞庫(kù),自定義dict.txt文件

import jiebafrom urllib.request import urlopen from bs4 import BeautifulSoup# 來(lái)源于地圖搜索數(shù)據(jù),按照網(wǎng)民輸入習(xí)慣精心篩選使用較多的詞條。包含城市地名、公交、購(gòu)物、餐飲、樓盤等各種信息,適合本地區(qū)網(wǎng)友使用 url = "http://search.qinggl.com/dict-3687.html" html = urlopen(url).read().decode('utf-8') soup = BeautifulSoup(html, features='lxml') urls = soup.find_all("div", {"id": "box-new","class":"wordbox basic"}) print(urls) print(type(urls)) x = str(urls) x = x.replace("><span>","") x = x.replace("<span>","") x = x.replace("</span","\n") x = x.replace("></div>","") x = x.split("\n") x = x[1:] x.pop() print(len(x)) print(x)jieba.load_userdict("./dict.txt") word_list = jieba.cut("我今天不處理逾期信用貸款,因?yàn)槌啥寄静姆栏瘡S根本打不開(kāi).我?guī)滋煜肴フZ(yǔ)過(guò)添情網(wǎng)吧開(kāi)心happy一下。") print("|".join(word_list)) # #D:\anacoda\envs\nlp\Lib\site-packages\jieba

二:將搜狗詞庫(kù).scel文件為.txt文件

# -*- coding: utf-8 -*- import struct import os# 主要兩部分 # 1.全局拼音表,貌似是所有的拼音組合,字典序 # 格式為(index,len,pinyin)的列表 # index: 兩個(gè)字節(jié)的整數(shù) 代表這個(gè)拼音的索引 # len: 兩個(gè)字節(jié)的整數(shù) 拼音的字節(jié)長(zhǎng)度 # pinyin: 當(dāng)前的拼音,每個(gè)字符兩個(gè)字節(jié),總長(zhǎng)len # # 2.漢語(yǔ)詞組表 # 格式為(same,py_table_len,py_table,{word_len,word,ext_len,ext})的一個(gè)列表 # same: 兩個(gè)字節(jié) 整數(shù) 同音詞數(shù)量 # py_table_len: 兩個(gè)字節(jié) 整數(shù) # py_table: 整數(shù)列表,每個(gè)整數(shù)兩個(gè)字節(jié),每個(gè)整數(shù)代表一個(gè)拼音的索引 # # word_len:兩個(gè)字節(jié) 整數(shù) 代表中文詞組字節(jié)數(shù)長(zhǎng)度 # word: 中文詞組,每個(gè)中文漢字兩個(gè)字節(jié),總長(zhǎng)度word_len # ext_len: 兩個(gè)字節(jié) 整數(shù) 代表擴(kuò)展信息的長(zhǎng)度,好像都是10 # ext: 擴(kuò)展信息 前兩個(gè)字節(jié)是一個(gè)整數(shù)(不知道是不是詞頻) 后八個(gè)字節(jié)全是0 # # {word_len,word,ext_len,ext} 一共重復(fù)same次 同音詞 相同拼音表# 拼音表偏移, startPy = 0x1540;# 漢語(yǔ)詞組表偏移 startChinese = 0x2628;# 全局拼音表 GPy_Table = {}# 解析結(jié)果 # 元組(詞頻,拼音,中文詞組)的列表# 原始字節(jié)碼轉(zhuǎn)為字符串 def byte2str(data):pos = 0str = ''while pos < len(data):c = chr(struct.unpack('H', bytes([data[pos], data[pos + 1]]))[0])if c != chr(0):str += cpos += 2return str# 獲取拼音表 def getPyTable(data):data = data[4:]pos = 0while pos < len(data):index = struct.unpack('H', bytes([data[pos], data[pos + 1]]))[0]pos += 2lenPy = struct.unpack('H', bytes([data[pos], data[pos + 1]]))[0]pos += 2py = byte2str(data[pos:pos + lenPy])GPy_Table[index] = pypos += lenPy# 獲取一個(gè)詞組的拼音 def getWordPy(data):pos = 0ret = ''while pos < len(data):index = struct.unpack('H', bytes([data[pos], data[pos + 1]]))[0]ret += GPy_Table[index]pos += 2return ret# 讀取中文表 def getChinese(data):GTable = []pos = 0while pos < len(data):# 同音詞數(shù)量same = struct.unpack('H', bytes([data[pos], data[pos + 1]]))[0]# 拼音索引表長(zhǎng)度pos += 2py_table_len = struct.unpack('H', bytes([data[pos], data[pos + 1]]))[0]# 拼音索引表pos += 2py = getWordPy(data[pos: pos + py_table_len])# 中文詞組pos += py_table_lenfor i in range(same):# 中文詞組長(zhǎng)度c_len = struct.unpack('H', bytes([data[pos], data[pos + 1]]))[0]# 中文詞組pos += 2word = byte2str(data[pos: pos + c_len])# 擴(kuò)展數(shù)據(jù)長(zhǎng)度pos += c_lenext_len = struct.unpack('H', bytes([data[pos], data[pos + 1]]))[0]# 詞頻pos += 2count = struct.unpack('H', bytes([data[pos], data[pos + 1]]))[0]# 保存GTable.append((count, py, word))# 到下個(gè)詞的偏移位置pos += ext_lenreturn GTabledef scel2txt(file_name):print('-' * 60)with open(file_name, 'rb') as f:data = f.read()print("詞庫(kù)名:", byte2str(data[0x130:0x338])) # .encode('GB18030')print("詞庫(kù)類型:", byte2str(data[0x338:0x540]))print("描述信息:", byte2str(data[0x540:0xd40]))print("詞庫(kù)示例:", byte2str(data[0xd40:startPy]))getPyTable(data[startPy:startChinese])getChinese(data[startChinese:])return getChinese(data[startChinese:])#scel2txt(.ChengDuInformationWord.scel)if __name__ == '__main__':# scel所在文件夾路徑in_path = r"D:\InternetOffice\code"# 輸出詞典所在文件夾路徑out_path = r"D:\InternetOffice\code"#fname = "ChengDuInformationWord.scel"fin = [fname for fname in os.listdir(in_path) if fname[-5:] == ".scel"]for f in fin:try:for word in scel2txt(os.path.join(in_path, f)):file_path = (os.path.join(out_path, str(f).split('.')[0] + '.txt'))# 保存結(jié)果with open(file_path, 'a+', encoding='utf-8')as file:file.write(word[2] + '\n')os.remove(os.path.join(in_path, f))except Exception as e:print(e)pass

總結(jié)

以上是生活随笔為你收集整理的爬取词库,使用jieba分词库,自定义dict.txt文件+将搜狗词库.scel文件为.txt文件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产伦精品一区二区. | 亚洲av毛片基地 | 曰批免费视频播放免费 | 国产12页 | 欧美一区二区三区爽爽爽 | 波多野一区二区 | 爱的色放韩国电影 | 激情伦成人综合小说 | 看一级黄色大片 | av在线免费播放 | 亚洲第一视频区 | 草逼国产| 韩国19主播内部福利vip | 天堂影音 | av美女在线| 亚洲成人激情av | 最新高清无码专区 | 丰满多毛的大隂户视频 | 色 综合 欧美 亚洲 国产 | 国产69页| 99爱视频| 成人免费无码大片a毛片 | 一区二区三区在线观 | 日韩视频中文字幕 | 亚洲AV成人无码精电影在线 | 久久久久久久穴 | 日韩欧美一区二区在线观看 | 天堂综合 | 日本美女一级片 | 国产精品一级二级三级 | 欧美成人免费一级 | 福利电影一区二区三区 | 天天玩天天操 | 成人激情电影在线观看 | 黄色片在哪看 | 欧美精品二区三区四区免费看视频 | 天天躁狠狠躁狠狠躁夜夜躁68 | 老熟女毛茸茸浓毛 | 亚洲成人tv| 色姑娘久 | 在线中出 | 色哟哟中文字幕 | 亚洲精品国偷拍自产在线观看蜜桃 | 欧美一区二区三区日韩 | 日韩视频免费观看 | 成人a级大片 | 一级黄色免费观看 | 久久综合激情 | 精品久久毛片 | 快播色图 | av私库在线观看 | 理论片毛片 | 激情视频一区二区三区 | 在线精品免费视频 | 亚洲综合av网 | 国产精品国产三级国产在线观看 | 欧美日韩高清在线播放 | 丰满少妇在线观看网站 | 日本人六九视频 | 老熟女一区二区三区 | 日韩视频一区二区 | 粗大挺进潘金莲身体在线播放 | 久久xx| 国产亚洲一区二区三区 | 少妇厨房愉情理伦bd在线观看 | 国产精品久久久久久久久久久免费看 | 亚洲精品xxxxx | 中文字幕在线播放第一页 | 日本乱码一区二区 | 色偷偷一区二区三区 | 美女激情网站 | 一区二区视频在线观看 | 99国产精品99久久久久久 | 日韩在线激情 | 日韩不卡视频在线观看 | 欧美激情一区二区三区四区 | 可以直接观看的av | 国产精品婷婷午夜在线观看 | 91视频一区二区 | 玖草在线视频 | 人人插人人草 | 国产伦精品一区三区精东 | a天堂在线观看视频 | jizz少妇| 中国少妇av | 好吊妞视频在线观看 | 欧美xxxxx高潮喷水麻豆 | 插插久久 | 国产美女喷水 | 欧美伊人久久 | 欧美成人国产精品高潮 | 日本特级片 | 久久精工是国产品牌吗 | 天天操夜夜爱 | 久久精品视频久久 | jlzzjlzzjlzz亚洲人| 亚洲综合色自拍一区 | 日韩精品视频一区二区三区 | 岛国av免费看 |