中国共产党第十八、十九、 二十次全国人民代表大会

报告实录文本挖掘与分析(简单版)

爬取18大报告实录文本

import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC driver = webdriver.Chrome()
wait = WebDriverWait(driver, 10)
driver.get('http://cpc.people.com.cn/n/2012/1118/c64094-19612151.html') # 打开网页
# 读入第一页数据
file = open('18da_report_raw.txt', 'w', encoding='utf-8')
file.write(data)
file.close()
wait.until(EC.presence_of_element_located(
(By.XPATH, '//*[@id="p_content"]/center/table/tbody/tr/td/a')
)# 可扩展标记语言(英語:Extensible Markup Language,简称:XML)是一种标记语言
).click()
#依次读入后十页数据
for i in range(10): data  =  driver.find_element_by_xpath('//*[@id="p_content"]').textfile = open('18da_report_raw.txt', 'a', encoding='utf-8')file.write(data)file.close()time.sleep(2)wait.until(EC.presence_of_element_located((By.XPATH, '//*[@id="p_content"]/center/table/tbody/tr/td[2]/a')
)
).click()
# 读入最后一页
data  =  driver.find_element(By.XPATH,'//*[@id="p_content"]').text
file = open('18da_report_raw.txt', 'a', encoding='utf-8')
file.write(data)
file.close()
driver.quit()

爬取19大报告文本

from selenium import webdriverdriver = webdriver.Chrome()
driver.get('http://finance.sina.com.cn/china/gncj/2017-10-18/doc-ifymvuyt4098830.shtml')
data  =  driver.find_element_by_xpath('//*[@id="articleContent"]/div[1]').text
file = open('19da_report_raw.txt', 'w', encoding='utf-8')
file.write(data)
file.close()

爬取20大报告文本

from selenium import webdriverdriver = webdriver.Chrome()
driver.get('https://news.ifeng.com/c/8K9l4qcZtaw')
data  =  driver.find_element_by_xpath('//*[@id="root"]/div/div[2]/div[2]/div/div[1]/div/div').textfile = open('20da_report_raw.txt', 'w', encoding='utf-8')
file.write(data)
file.close()

收集数据后进行数据处理

高频词分析以及画词云图替换txt文件即可

import jiebafrom wordcloud import WordCloud
import matplotlib.pyplot as plt
txt = open("18.txt",encoding="utf-8").read()
stopwords = [line.strip() for line in open("baidu_stopwords.txt",encoding="utf-8").readlines()] #  strip()方法用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列
words = jieba.lcut(txt,cut_all=False) # 精确模式
counts = {}for word in words:# 不在停词表中if word not in stopwords:# 不统计字数为1的词 if len(word) == 1:continueelse:counts[word] = counts.get(word,0)+1print(counts[word])
items = list(counts.items())
items.sort(key=lambda x:x[1],reverse=True)
for i in range(30):word, count = items[i]print("{:<10}{:>7}".format(word, count))text=' '.join(words)
wc=WordCloud(background_color='white',# 设置背景颜色font_path='msyh.ttc',# 若是有中文的话,这句代码必须添加,不然会出现方框,不出现汉字  scale=2, #按照比例进行放大画布,如设置为2,则长和宽都是原来画布的1.5倍max_words=100,# 设置最大现实的字数  max_font_size=80,# 设置字体最大值  stopwords =stopwords)
wc.generate(text)
# 显示词云图
plt.imshow(wc)
plt.axis('off')
plt.show()
wc.to_file('词频统计.jpg')

关键词分析(简易版)

import jieba
import jieba.analyse as analyse
with open('20.txt') as f: # 默认模式为‘r’,只读模式contents = f.read() # 读取文件全部内容contents = contents.replace(u'\u3000',u'').replace('\n', '').replace('\r', '').replace(" ","")contents.rstrip()
# jieba.del_word("坚持")
# jieba.del_word("推进")# jieba.del_word("中国")
# jieba.del_word("全面")
jieba.del_word("我们")
jieba.del_word("实现")
jieba.del_word("伟大")
jieba.del_word("坚持")
jieba.del_word("加强")
jieba.del_word("全面")
jieba.del_word("中国")
jieba.del_word("完善")
jieba.del_word("加快")
jieba.del_word("健全")
jieba.del_word("社会")
jieba.del_word("推进")
jieba.del_word("推动")
jieba.del_word("提高")
words = jieba.lcut(contents,cut_all=False)# 使用精确模式对文本进行分词
text=' '.join(words)keywords = jieba.analyse.extract_tags(text,topK=10,withWeight=True,allowPOS=())
for item in keywords:print(item[0],item[1])

【无标题】报告实录文本挖掘与分析(简单版)相关推荐

  1. c语言程序设计1003无标题,程序员历年试题分析与解答2010年最新版-第18章 2009上半年程序员下午试题分析与解答...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 试题一(共15分) 阅读以下说明和流程图,填补流程图中的空缺(1)-(5),将解答填入答题纸的对应栏内. [说明] 下面的流程图采用公式ex=1+x+x2 ...

  2. 【无标题】C语言编写一个简单答题系统

    这是蒟蒻写的第一个博客,将就看看吧! 首先,我写的是一个填空题答题系统,填空题数目为20. 其次,需要随机出题,题目出现顺序要不一致. (1) 产生随机数 1~20 (2)  解决运气不好的问题1-1 ...

  3. 【无标题】BOM报表开发分析

    困扰许久的一个问题,终于得到了解决.一直以来,基本上每个项目都有下载BOM清单的需求.一般用的也是标准的FM,一来是省事,不用去把各个后台表做关联,二来是BOM中的Valid To字段,在STPO表中 ...

  4. 游戏服务器设计(C#)简单版

    背景 充分利用c#中的task机制,设计高并发,无锁(针对业务逻辑)的服务器架构 gateserver 处理客户端连接.交互的服务器 永久性设计,与游戏项目无关,无需新代码维护 gameserver ...

  5. html5制作webar,实战 | 前端WebAR实现简单版pokemon Go

    原标题:实战 | 前端WebAR实现简单版pokemon Go 最近AR的话题很火,如前段时间pokemon Go游戏,和支付宝的AR红包,加上最近看到了一些关于前端运用webRTC技术实现WebAR ...

  6. 无标题窗体的移动及其简单美化

    先看效果图吧. 最近做Web,发现网页三剑客总是会留下一些"最近打开项目"这样的痕迹在软件的界面上,心里总是觉得很不舒服,于是萌发了写一个清除器的念头.说动手就动手吧! DW.FW ...

  7. 简易模型计算机性能分析报告,计算机组成原理 实验八 简单模型计算机实验解析.doc...

    实验八 简单模型计算机实验 实验目的 通过实验分析简单模型机结构,了解计算机的工作原理. 掌握计算机微程序控制器的控制方法,掌握计算机指令执行过程 实验原理 基本整机模型数据框图如图所示,计算机数据通 ...

  8. 标题网站搜索引擎友好性分析

    标题网站搜索引擎友好性分析 实验课程时间安排:在学习完第5章"资源积累能力与搜索引擎"之后. 实验条件:电脑接入互联网,可以使用国内外主要搜索引擎,无需专用网络营销实验软件. 1. ...

  9. 关于WM_NCHITTEST消息(移动无标题对话框多个)

    我为了移动一个无标题栏的窗体,使用了WM_NCHITTEST消息,这个消息大概如下: 通常,我们拖动对话框窗口的标题栏来移动窗口,但有时候,我们想通过鼠标在客户区上拖动来移动窗口. 一个容易想到的方案 ...

最新文章

  1. JSON——Jackson 时间格式化输入输出
  2. 基于运放AD8606的信号缓冲小板
  3. WordPress的Content-Length header already present错误
  4. Android环境的安装遇到的问题
  5. AR热度不在? NO! 三星开发者大会将聚焦AR
  6. group anagrams leetcode java_LeetCode第[49]题(Java):Group Anagrams
  7. typora 字体颜色_Typora 使用教程
  8. 计算机表格怎么互换,excel怎么把单元格交换位置
  9. ssize_t和size_t详解
  10. 南昌大学计算机学院夏令营,“优秀大学生暑期夏令营”参营营员名单公示
  11. iPhone连接Mac电脑总是断开
  12. TOOD: Task-aligned One-stage Object Detection
  13. matlab频谱分析中振幅的物理意义,频谱图分析的意义,频谱图的物理意义是什么呢,频率的振幅能够反映什么物理意义呢?(例如下图)请哪位大师指点,不胜感激!...
  14. 上有尧舜之君,下有尧舜之民
  15. 基于 Proteus 的单片机仿真
  16. 安卓开发-Activity的显示意图和隐式意图+实例+Activity界面间数据的传递实例
  17. html5页面下拉加载更多_使您的产品页面销售更多的5条提示
  18. 微信、支付宝上的真人头像快换了吧!暴力催收,不少人已中招
  19. 泰达机器人董事长_50家企业的领袖汇聚一堂,共同探讨行业趋势走向
  20. 有意思了,小程序可以一键生成App了

热门文章

  1. 闭关修炼,快速提高自己的技术水平
  2. C# 开发漂亮的桌面应用
  3. 利用HTML+CSS美化表格
  4. 苹果官方下载地址(iOS,mac OS, Xcode 等)
  5. 2022-2028年全球与中国自动细胞分选机行业市场深度调研及投资预测分析
  6. 2023新春祝福html代码,包你学会
  7. http 302状态码
  8. 将项目上传到Gitee上(命令方式使用TortoiseGit方式)
  9. spark源码解读4之SortByKey
  10. w ndows7与XP哪个好,Windows7与Windows XP哪个更好?