核心方法:Python分词模块jieba (01)-jieba安装,分词,提取关键词

优采云 发布时间: 2022-09-24 21:07

  核心方法:Python分词模块jieba (01)-jieba安装,分词,提取关键词

  分词模块jieba,结巴的jieba。是一个比较好用的python分词模块。支持中文简繁分词,也支持自定义词库。

  主要讲jieba的分词,提取关键词,自定义词,切换词库。

  安装解霸

  安装命令:

  pip install jieba

(venv) allenwoo@~/renren$ pip install jieba

Collecting jieba

Installing collected packages: jieba

Successfully installed jieba-0.38

  分词切

  jieba.cut() 分词提供多种模式:完整模式、精确模式、搜索引擎模式

  完整模式:速度块,单词扫描成单词,但出现模棱两可的单词时

  精确模式:尽可能准确的非分词,更适合文本分析

  搜索引擎模式:在精准模式的基础上,再对长词进行切分,提高查全率

  例子:

  #!/usr/bin/python

# -*- coding: UTF-8 -*-

import jieba

strt = "人人编程时我们,适合编程初学者学习python的教材,也是好专业的童鞋关注学习"

# 全模式

sl = jieba.cut(strt, cut_all=True)

print "全模式分词结果:", ",".join(sl)

print('\n')

# 精确模式,默认hi精确模式,所以可以不指定cut_all=False

sl = jieba.cut(strt, cut_all=False)

print "精确模式分词结果:", ",".join(sl)

print('\n')

# 搜索引擎模式

sl = jieba.cut_for_search(strt)

print "搜索引擎模式分词结果:", ",".join(sl)

  跑:

  (venv) allenwoo@~/renren$ python test.py

Building prefix dict from the default dictionary ...

Loading model from cache /var/folders/5c/0vmv6d5d2pqdwfl78gc436zw0000gn/T/jieba.cache

Loading model cost 0.438 seconds.

Prefix dict has been built succesfully.

全模式分词结果: 人人,编程,时,我们,,,适合,合编,编程,初学,初学者,学者,学习,python,的,教材,,,也,是,好,专业,的,童鞋,关注,学习

精确模式分词结果: 人人,编程,时,我们,,,适合,编程,初学者,学习,python,的,教材,,,也,是,好,专业,的,童鞋,关注,学习

搜索引擎模式分词结果: 人人,编程,时,我们,,,适合,编程,初学,学者,初学者,学习,python,的,教材,,,也,是,好,专业,的,童鞋,关注,学习

  解释:从结果中可以看出,“全模式”有很多歧义,比如适合、合编、编程、初学者、初学者、学者,而精确模式的结果是:适合、编程、初学者

  jieba在执行前会初始化加载词库,如下

  Building prefix dict from the default dictionary ...

Loading model from cache /var/folders/5c/0vmv6d5d2pqdwfl78gc436zw0000gn/T/jieba.cache

Loading model cost 0.438 seconds.

<p>

Prefix dict has been built succesfully.</p>

  附:如果不想每次都加载词库,可以让jieba一直初始化并在后台运行:

  比如在flask中使用时,jieba要在初始化的app文件中进行初始化,然后其他程序会调用初始化的那个,后面我们讲flask的时候再讲

  关键词提取nalyse.extract_tags:

  jieba.analyse.extract_tags(sentence,topK)

sentence: 文本字符串

topK: 前几个,默认时20

  例子:

  注意:导入jieba.analysis,而不是jieba

  #!/usr/bin/python

# -*- coding: UTF-8 -*-

import jieba

import jieba.analyse

strt = "人人编程是适合编程初学者学习python关注的公众号,也是好专业的童鞋关注学习。我们讲讲解python基础编程,python一些第三方模块的使用,python一些第三方框架如flask web框架等"

# topK 默认为20

keywords = jieba.analyse.extract_tags(strt)

print(",".join(keywords))

print("\n")

keywords = jieba.analyse.extract_tags(strt, topK=3)

print(",".join(keywords))

print("\n")

# 有时候我们不确定该取几个关键词,这个时候我们可以取总词的百分比

sl = jieba.cut(strt)

w_cnt = len(list(sl))

print("一共有{}个词".format(w_cnt))

# 取5%

get_cnt = int(w_cnt*0.05)

print("取5%数量的关键词:{}个".format(get_cnt))

keywords = jieba.analyse.extract_tags(strt, topK=get_cnt)

print(",".join(keywords))

  结果

  python,编程,第三方,框架,童鞋,web,flask,学习,初学者,关注,模块,讲解,一些,人人,公众,适合,专业,基础,使用,我们

python,编程,第三方

一共有46个词

取5%数量的关键词:2个

python,编程

  jieba动态添加自定义词

  #!/usr/bin/python

# -*- coding: UTF-8 -*-

import jieba

strt = "我是巴拉巴拉小魔鬼"

sl = jieba.cut(strt)

print "[自定义前]:","/".join(sl)

# 添加自定义词

jieba.add_word(&#39;巴拉巴拉&#39;)

jieba.add_word(&#39;小魔鬼&#39;)

<p>

sl = jieba.cut(strt)

print "[自定义后]:", "/".join(sl)</p>

  结果

  [自定义前]: 我/是/巴拉巴/拉小/魔鬼

[自定义后]: 我/是/巴拉巴拉/小魔

  我们也可以定义自己的词库,在需要使用的时候加载我们自定义的词库,这样jieba就会同时使用“jieba初始化时加载的词库”和“我们的自定义词库”

  在我们本地下新建一个文件renren-dict.txt,写一个字

  (venv) allenwoo@~/renren$ cat renren-dict.txt

python人 5 nz

   #!/usr/bin/python

# -*- coding: UTF-8 -*-

import jieba

strt = "我们python人,玩蛇者"

sl = jieba.cut(strt)

print "[加载自定义词库前]:","/".join(sl)

# 加载自定义词库

jieba.load_userdict("./renren-dict.txt")

sl = jieba.cut(strt)

print "[加载自定义词库后]:", "/".join(sl)

  结果

  [加载自定义词库前]: 我们/python/人/,/玩蛇者

[加载自定义词库后]: 我们/python人/,/玩蛇者

因为我们自定义的词库将 “python人”定义为一个词了

  词库切换:

  上面的load_userdict加载自定义词库和jieba初始化词库一起使用

  但是,默认的初始化词库是放在安装目录中的。很多时候我们需要用我们认为更全面的词库来替换它。有时我们需要把它放在我们自己的目录下。

  这时候我们可以使用jieba的词库切换函数set_dictionary()

  我们可以将jieba默认词库复制到自己的目录下,也可以在网上找更全面的词库

  (ubuntu) 默认词库路径在模块安装路径下:

  如果是虚拟环境

  venv/lib/python2.7/site-packages/jieba/dict.txt

  例子:

  #!/usr/bin/python

# -*- coding: UTF-8 -*-

import jieba

# 切换词库

jieba.set_dictionary("./renren-dict.txt")

strt = "我们python人,玩蛇者"

sl = jieba.cut(strt)

print "/".join(sl)

  如果我们切换词库,程序会初始化我们此时指定的词库,而不是加载默认路径的词库

  (venv) allenwoo@~/renren$ python test.py

Building prefix dict from /Users/allenwoo/renren/renren-dict.txt ...

Dumping model to file cache /var/folders/5c/0vmv6d5d2pqdwfl78gc436zw0000gn/T/jieba.ue964acea829f11ec25dab31f363e67bf.cache

Loading model cost 0.003 seconds.

Prefix dict has been built succesfully.

我们/python人/,/玩蛇者

  jieba的功能还没有完成,稍后继续。

  干货内容:SEO关键词挖掘,SEO关键词排名挖掘,SEO关键词挖掘软件

  SEO关键词挖矿是我们SEO工作的重要组成部分,关键词的排名直接影响到我们网站的流量。无论是流行的关键词还是长尾的关键词,都需要结合网站的特点和自己的目标来挖掘。

  SEO关键词挖掘有很多维度,可以通过热门关键词、行业关键词、区域关键词甚至季节性关键词来挖掘。

  SEO关键词挖矿我们可以通过SEO关键词挖矿软件帮助我们进行关键词挖矿,SEO关键词挖矿软件拥有NLP智能语言处理系统和强大的机器人学习能力,精准通过大数据分析挖掘关键词。

  

  SEO关键词挖矿软件只要输入我们的关键词就可以完成全网关键词匹配,并将长尾关键词和对应的文章@排列为我们通过数据分析 &gt; 内容。我们可以通过SEO关键词挖矿软件实现全托管网站。

  SEO关键词挖矿软件可以文章@>匹配采集选中的关键词,通过伪原创自动发布实现文章@>的创建全过程. 只需键入 关键词 即可开始生成管道。所有流程都可以看到,数据信息可以溯源。

  SEO关键词挖矿软件为文章@>质量保证通过以下几点来完成源头保证,有一定的流量网站,优质的内容也是一个可取的选择,因为用户流量,内容会产生价值。这里我们要考虑用户关心什么,希望用户看到什么内容。当然,我们自己的优质原创文章@>是最好的。当我们有用户的时候,我们会苦于我们不能做用户想看到的事情。我们可以通过互联网找到相关的内容,最能保证及时性。

  SEO关键词挖矿软件可以为我们的采集站实现24小时挂机操作。通过关键词pan采集和伪原创的发布,可以及时更新网站的内容,及时更新网站的内容同步更新。

  

  受搜索引擎信任的网站,在各大平台上,主要是靠复制新发布的内容来提升比较快的,因为大部分人都会问他们是否可以将内容转载到SEO中。

  对于新站,最好不要盲目粘贴复制。如果太多,只会被搜索引擎列入黑名单。新站就像一个刚出生的婴儿。当然,我们不喜欢自己的孩子长得像隔壁老王,所以,对于刚刚上网的网站,最好不要转发太多,转发就好了妥妥的,不超过6个月,将被视为新网站!

  不是一个新站点,但流量不是特别大:搜索引擎在 网站 没有流量之前无法计算 UX 分数,所以如果这些 网站 想要在没有用户投票的情况下获得搜索引擎的信任,他们不会不适合粘贴和复制太多内容。

  SEO关键词挖矿和SEO关键词挖矿软件的分享就到这里。如果您有不同的意见或想法,可以留言讨论。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线