python文本关键词提取_python提取文本关键词
python提取关键词textrank算法,将数据库中的数据提取出来,然后进行分析,代码如下
import pymysql
import jieba
from textrank4zh import TextRank4Keyword,TextRank4Sentence
import logging
jieba.setLogLevel(logging.INFO)
#消除日志
def get_key_words(text,num=3):
tr4w=TextRank4Keyword()
tr4w.analyze(text,lower=True)
#分析文本
key_words=tr4w.get_keywords(num)
#提取关键词,num是指关键词的个数
return [item.word for item in key_words]
db = pymysql.connect(host='localhost', port=3306, user='root', passwd='root', db='cs', charset='utf8')
#连接数据库
cursor = db.cursor()
#使用cursor方法创建一个游标
sql = "select shuzi from 单位"
cursor.execute(sql)
data = cursor.fetchall()
#fetchall()方法为查询多条数据,fetchone()为查询一条数据
for i in data:
if i[0] != None:
words = get_key_words(i[0])
print(words)
在编写过程中出现了这种错误'NoneType' object has no attribute 'split',在网上找了好长时间为什么会出现这样的错误,错误出现在最后通过循环对数据库中的数据进行提取的时候,我通过这种方法,查看了每条数据的类型,发现在第六条数据类型为NoneType,说明第六条数据为空,所以才会报错
for i in data:
print(type(i[0]))
当遇到为空的数据时候,只要跳过就可以了,所以加了一条判断语句,只有不为空的时候,才执行函数进行关键词提取,最开始使用的是:
for i in data:
if len(i[0])>0:
# if i[0] != None:
words = get_key_words(i[0])
print(words)
出现了如下的错误:TypeError: object of type 'NoneType' has no len()
这就说明这种判断是否为空的方法是错误的,后发现Nonetype类型,其实就是值为None,所以直接判断值就可以了直接可以用:
if i[0] != None:最后错误解决,成功提取了关键词。
python文本关键词提取_python提取文本关键词相关推荐
- python文本编码转换_Python: 转换文本编码
最近在做周报的时候,需要把csv文本中的数据提取出来制作表格后生产图表. 在获取csv文本内容的时候,基本上都是用with open(filename, encoding ='UTF-8') as f ...
- python 英文关键词提取_python提取内容关键词的方法
python怎么提取关键词 import re f = open("D:/xiangmu/python/xiangmu/gjc.txt", "r", encod ...
- python获取图片名称_python提取图像的名字*.jpg到txt文本的方法
如下所示: # -*- coding:utf-8 -*- import sys sys.path.append('E:\\Anaconda\\libs') import os #os:操作系统相关的信 ...
- python语句结束符号_Python从文本中提取hashtags;以标点符号结尾
对于我的编程类,我必须根据以下描述创建一个函数:The parameter is a tweet. This function should return a list containing all ...
- python中的结束用语,python语句结束符号_Python从文本中提取hashtags;以标点符号结尾...
对于我的编程类,我必须根据以下描述创建一个函数:The parameter is a tweet. This function should return a list containing all ...
- python空行拼接字符串_python基础---文本和字符串操作
一.文本操作 打开读取文本 (查) lock_file = open('username_lock.txt', 'r+') #r+ 读写 lock_list =lock_file.readlines( ...
- python如何分成两行_python将文本分每两行一组并保存到文件
业务需求 需要将文本文件分每两行一组 jb51.txt 1:www.jb51.net 2:www.jb51.net 3:www.jb51.net 4:www.jb51.net 5:www.jb51.n ...
- python输出文本和值_python读取文本中数据并转化为DataFrame的实例
在技术问答中看到一个这样的问题,感觉相对比较常见,就单开一篇文章写下来. 从纯文本格式文件 "file_in"中读取数据,格式如下: 需要输出成"file_out&quo ...
- python源码提取_Python提取Linux内核源代码的目录结构实现方法
今天用Python提取了Linux内核源代码的目录树结构,没有怎么写过脚本程序,我居然折腾了2个小时,先是如何枚举出给定目录下的所有文件和文件夹,os.walk可以实现列举,但是os.walk是只给出 ...
最新文章
- PHP中spl_autoload_register函数的用法
- [Tomcat]Tomcat6和Tomcat7的区别
- leetcode算法题--飞机座位分配概率
- centos java发送邮件发不出去_传真机发不出传真怎么办 传真机发不出传真解决方法【详解】...
- java 匹配mysql按钮_使用Java在mysql查询中设置匹配函数
- gridview ashx实现数据更新_Python分析了香港26281套在售二手房数据,结果发现
- 判断两颗棵二叉树是否相等
- 说一下OFO带给我们的启示
- 用大白菜制作linux启动盘制作工具,使用大白菜+FbinstTool制作多系统的启动盘
- 人工智能:博弈--人机中国象棋
- android金山清理扫描文件动画,[Android开发实战]金山清理大师(猎豹清理大师)一键加速快捷方式动画实现...
- Kafka的监控以及运维与Kafka-eagle的安装
- 关于数据库账号和密码加密问题
- 网安实训(十)| Ms12-020 漏洞复现
- 最大岛屿 计蒜客--T1405
- (进制转换)—— 十六进制转换
- 周鸿祎:论互联网大佬的编程能力,我能排进前三!
- 编写Java程序,使用面向接口编程模拟不同动物的吼叫声
- 7K7K小游戏《黑客是怎样炼成的》攻略
- 英伟达GTX 960M安装anaconda、cuda+cudnn