zoukankan      html  css  js  c++  java
  • 中文分词并将结果存入数据库

    核心步骤:

    • 创建数据库连接
    def get_conn():
        """
        获取连接和游标
        :return:
        """
        conn=pymysql.connect(host="127.0.0.1",
                             user="root",
                             password="000000",
                             db="news",
                             charset="utf8")
        cursor=conn.cursor()
        return conn,cursor
    
    def close_conn(conn, cursor):
        """
        关闭连接和游标
        :param conn:
        :param cursor:
        :return:
        """
        if cursor:
            cursor.close()
        if conn:
            conn.close()
    • 读取文件
    fn = open('F:\\PyCharm\\newsProject\\file\\youxi.txt', 'rt', encoding='utf-8')  # 打开文件
    string_data = fn.read()  # 读出整个文件
    fn.close()  # 关闭文件
    • 文本预处理
    pattern = re.compile(u'\t|\n|\.|-|:|;|\)|\(|\?|"')  # 定义正则表达式匹配模式
    string_data = re.sub(pattern, '', string_data)  # 将符合模式的字符去除
    • 文本分词
    seg_list_exact = jieba.cut(string_data, cut_all=False)  # 精确模式分词
    object_list = []
    • 去除停用词(停用词文件:stopword.txt)
    remove_words = set()
    fr = open('F:\\PyCharm\\newsProject\\stopword\\stopword.txt', encoding = 'UTF-8')
    for word in fr:
        remove_words.add(str(word).strip())
    fr.close()
    for word in seg_list_exact:  # 循环读出每个分词
    if word not in remove_words: # 如果不在去除词库中
    object_list.append(word) # 分词追加到列表
    • 词频统计并导入数据库
    word_counts = collections.Counter(object_list)  # 对分词做词频统计
    word_counts_top10 = word_counts.most_common(100)  # 获取前10最高频的词
    print(word_counts_top10)  # 输出检查
    conn,course= get_conn()
    for i in word_counts_top10:
        sql="insert into result_game (name,values_data) values(%s,%s)"
        course.execute(sql,i)
    conn.commit()
    close_conn(conn,course)
  • 相关阅读:
    array.prototype.slice.call(arguments)
    axios 的坑
    Cannot read property 'range' of null
    IDEA导入Eclipse的JavaEE项目详细步骤链接
    使用 yarn 安装时,报错node_modules ode sass:Command failed.
    axios post请求非json传参设置
    vue-cli 3.x跨域配置
    idea错误: 找不到或无法加载主类
    Git 上传新项目
    Windows下生成SSH密钥
  • 原文地址:https://www.cnblogs.com/zyj3955/p/15606819.html
Copyright © 2011-2022 走看看