python读取word


这个功能的目的在于将word文档的内容读出来后,用jieba分词库,找出基于TF/IDF权重最大的关键词。

难点在于一些解码问题和对word文档打开过程中一些异常的捕捉,目前为止还有一些异常捕捉不到,想到一个比较暴力的想法就是,每次打开word时,监听时间,超过规定时间则把这个word删除或者别的处理。但是还没有实现。

下面,上读取代码


def new_open_word(file_path):
    msword = Dispatch('Word.Application')
    msword.Visible = 0
    msword.DisplayAlerts = 0
    try:
        doc = msword.Documents.Open(FileName=file_path )
        doc.SaveAs('C:/TEST/3.txt',4);
        doc.Close()
    except:
        return "  "

    content = open('C:/TEST/3.txt').read()

    content = content.replace(" ","").replace("\n","")
    try:
        content = unicode(content, 'gbk')
    except UnicodeDecodeError:
        return "  "
    else:
        content = re.findall(ur"[\u4e00-\u9fa5]+",content)
        return ''.join(content)




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章