1. 程式人生 > >seo與python大數據結合給文本分詞並提取高頻詞

seo與python大數據結合給文本分詞並提取高頻詞

根據 目錄 port odi 使用方法 文件夾 當前 efault 想要

最近研究seo和python如何結合,參考網上的一些資料,寫的這個程序。

目的:分析某個行業(例如:圓柱模板)用戶最關心的一些詞,根據需求去自動調整TDK,以及欄目,內容頁的規劃

使用方法:

1、下載安裝cygwin:http://www.cygwin.com/
2、cygwin安裝時別忘記安裝curl,wget,iconv,lynx,dos2unix,Python等常用工具,特別是Python,這次主要就是用它了。
3、去下載jieba中文分詞組件:
首選:https://github.com/fxsjy/jieba/archive/master.zip
備用:https://pypi.python.org/pypi/jieba/
4、安裝jieba中文分詞組件:
全自動安裝: easy_install jieba 或者 pip install jieba / pip3 install jieba
半自動安裝:先下載 https://pypi.python.org/pypi/jieba/ ,解壓後運行 python setup.py install
手動安裝:將 jieba 目錄放置於當前目錄或者 site-packages 目錄
通過 import jieba 來引用
5、復制以下代碼,另存為“jiebacmd.py”
6、新建一個文件夾,將你需要分詞的文本和jiebacmd.py拷進去,記住文本需要另存為utf-8編碼,然後在cygwin裏用cd命令把工作目錄切換進新建的文件夾,再輸入以下命令:cat abc.txt|python jiebacmd.py|sort|uniq -c|sort -nr|head -100

  代碼:

#encoding=utf-8
#usage example (find top 100 words in abc.txt):
#用途:找出abc.txt文件中出現頻率最高的前100個詞
#復制以下命令到cygwin裏運行,abc.txt是你文本的文件名,head -100可以自己改成想要提取的前多少個詞
#cat abc.txt | python jiebacmd.py | sort | uniq -c | sort -nr -k1 | head -100
#以上都是註釋,不影響程序運行
from __future__ import unicode_literals
import sys
sys.path.append("../")
reload(sys)
sys.setdefaultencoding( "utf-8" )
import jieba
default_encoding=‘utf-8‘
if len(sys.argv)>1:
    default_encoding = sys.argv[1]
while True:
    line = sys.stdin.readline()
    if line=="":
        break
    line = line.strip()
    for word in jieba.cut(line):
        print(word)

  

seo與python大數據結合給文本分詞並提取高頻詞