python中的ascending_Python爬虫爬取哈利波特小说,并用数据可视化分析出场人物

前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

49e97bfb80cae09142cbafe8be4431c7.gif

先简单介绍一下jieba中文分词包,jieba包主要有三种分词模式:

  • 精确模式:默认情况下是精确模式,精确地分词,适合文本分析;
  • 全模式:把所有能成词的词语都分出来, 但是词语会存在歧义;
  • 搜索引擎模式:在精确模式的基础上,对长词再次切分,适合用于搜索引擎分词。

jieba 包常用的语句:

  • 精确模式分词:jieba.cut(text,cut_all = False),当cut_all = True时为全模式
  • 自定义词典:jieba.load_userdict(file_name)
  • 增加词语:jieba.add_word(seg,freq,flag)
  • 删除词语:jieba.del_word(seg)

《哈利·波特》是英国作家J·K·罗琳的奇幻文学系列小说,描写主角哈利·波特在霍格沃茨魔法学校7年学习生活中的冒险故事。下面将以《哈利波特》错综复杂的人物关系为例,实践一下jieba包。

#加载所需包
import numpy as np
import pandas as pd
import jieba,codecs
import jieba.posseg as pseg  #标注词性模块
from pyecharts import Bar,WordCloud

#导入人名、停用词、特定词库
renmings = pd.read_csv('人名.txt',engine='python',encoding='utf-8',names=['renming'])['renming']
stopwords = pd.read_csv('mystopwords.txt',engine='python',encoding='utf-8',names=['stopwords'])['stopwords'].tolist()
book = open('哈利波特.txt',encoding='utf-8').read()
jieba.load_userdict('哈利波特词库.txt')

#定义一个分词函数
def words_cut(book):
    words = list(jieba.cut(book))
    stopwords1 = [w for w in words if len(w)==1]  #添加停用词
    seg = set(words) - set(stopwords) - set(stopwords1) #过滤停用词,得到更为精确的分词
  
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值