对 ArcGIS 10.8 本地帮助文件(chm)做了统计。结果显示,帮助文件合计10398个页面(比想象中大好多),14358147个字,词频统计来看,出现最多的词是 ‘数据’ ,出现了48998次,其次是 ‘要素’,’使用’,和 ‘工具’。
具体词频(出现10000次以上)是:
数据 48998次
要素 48818次
使用 47706次
工具 28835次
如果 25669次
创建 25529次
属性 24679次
地理 24554次
单击 24165次
ArcGIS 23419次
图层 23060次
数据库 22460次
可以 22016次
输入 20546次
进行 17893次
主题 16601次
栅格 16161次
一个 15798次
显示 15614次
输出 15291次
选择 15149次
指定 15107次
文件 15049次
设置 14433次
参数 14121次
arcpy 14106次
用于 13542次
地图 13055次
添加 12829次
通过 12484次
逻辑 12434次
空间 12358次
位置 11863次
示意图 11847次
需要 11678次
Esri 11395次
包含 11307次
类型 11196次
版本 11115次
定位 10900次
所有 10800次
编辑 10448次
10.8 10325次
All 10271次
然后 10256次
1995 10240次
2019 10225次
Copyright 10220次
rights 10219次
reserved 10217次
时间 10117次
流程是先把chm解编译成htm,再用beautifulsoup读取,用jieba分词。
import os
import requests
from bs4 import BeautifulSoup
import jieba
from collections import Counter
path ='E:\\jby'
def get_filelist(dir):
Filelist = []
for home, dirs, files in os.walk(path):
for filename in files:
if(filename[-3:]=="htm"):
Filelist.append(os.path.join(home, filename))
return Filelist
if __name__ =="__main__":
text=""
count=0
Filelist = get_filelist(dir)
print(len(Filelist))
for file in Filelist :
File=open(file,'r')
soup=BeautifulSoup(open(file),features='html.parser')
text=text+soup.text
if(count%100==0):
print(count)
count=count+1
print("总文本长度"+str(len(text)))
seg_list = jieba.cut(txt)
c = Counter()
for x in seg_list:
if len(x)>1 and x != '\r\n':
c[x] += 1
print('常用词频度统计结果')
for (k,v) in c.most_common(100):
print('%s%s %d' % (' '*(5-len(k)), k, v))