python 网页爬取数据生成文字云图

1. 需要的三个包:

from wordcloud import WordCloud        #词云库
import matplotlib.pyplot as plt        #数学绘图库
import jieba;

2. 定义变量(将对于的变量到一个全局的文件中):

import re;
pdurl_first='https://movie.douban.com/subject/26363254/comments?start=0'
head={'User-Agent':'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/59.0.3071.109 Chrome/59.0.3071.109 Safari/537.36'}
reg=re.compile(r'<a href="(.*?)&amp;.*?class="next">') #下一页
cookies={"__utma":"30149280.503249607.1504402391.1504402391.1504402391.1","_utmb":"30149280.2.9.1504402391","__utmc":"30149280","__utmt":"1","__utmz":"30149280.1504402391.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)","ap":"1","as":'"https://movie.douban.com/subject/26363254/comments?start=225&limit=20&sort=new_score&status=P"',"bid":"g7k4BGd2sRk","ck":"76vs","dbcl2":'"166279730:fohmXhoM9uU"',"ps":"y","push_doumail_num":"0","push_doumail_num":"0"}

3. 抓取数据

import requests;
import re;
from GrabData import Param;
import pandas as pd;
from bs4 import BeautifulSoup;class GrabComent:ren = re.compile(r'<span class="votes">(.*?)</span>.*?comment">.*?</span>.*?<span.*?class="">(.*?)</a>.*?<span>(.*?)</span>.*?title="(.*?)"></span>.*?title="(.*?)"><p .*? > (.*?)</p>',re.S)def __init__(self):print('开始抓取数据');html = requests.get(Param.pdurl_first, headers=Param.head, cookies=Param.cookies);while html.status_code == 200:url_next = 'https://movie.douban.com/subject/26363254/comments' + re.findall(Param.reg, html.text)[0]zhanlang = re.findall(self.ren, html.text)print(zhanlang)data = pd.DataFrame(zhanlang)data.to_csv('H:\\python_projects\\ticket\\zhanlangpinglun.csv', header=False, index=False,mode='a+')  # 写入csv文件,'a+'是追加模式data = []zhanlang = []print("下一页地址:"+url_next);html = requests.get(url_next, cookies=Param.cookies, headers=Param.head)if __name__ == '__main__':GrabComent();

 

4. 生成云图

from wordcloud import WordCloud        #词云库
import matplotlib.pyplot as plt        #数学绘图库
import jieba;class WordYun:def __init__(self):print("开始读取文件!");self.main();def main(self):text = self.readFile();self.showTitle(text);def showTitle(self,text1):wc1 = WordCloud(background_color="white",width=1000,height=860,font_path="D:\\Windows\\Fonts\\STFANGSO.ttf",  # 不加这一句显示口字形乱码margin=2);wc2 = wc1.generate(text1)  # 我们观察到generate()接受一个Unicode的对象,所以之前要把文本处理成unicode类型
        plt.imshow(wc2)plt.axis("off")plt.show();def readFile(self):a = []f = open(r'H:\\python_projects\\ticket\\zhanlangpinglun.csv', 'r').read()words = list(jieba.cut(f))for word in words:if len(word) > 1:a.append(word);txt = r' '.join(a)print("readFile返回的结果:"+txt);return txt;if __name__ == '__main__':WordYun();

 

转载于:https://www.cnblogs.com/wangshunyao/p/7534883.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/251831.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python---重点(设计模式)

前戏&#xff1a;设计模式简介 设计模式是面向对象设计的解决方案&#xff0c;是复用性程序设计的经验总结。&#xff08;与语言无关&#xff0c;任何语言都可以实现设计模式&#xff09; 设计模式根据使用目的的不同而分为创建型模式&#xff08;Creational Pattern&#xff0…

洛谷 题解 P2010 【回文日期】

因为有8个字符&#xff0c;所以可得出每一年只有一个回文日期。 因此只要判断每一年就行了。 做法&#xff1a; 我们先把年倒过来&#xff0c;例如2018年就倒为8102&#xff0c;就得出8102就是回文日期的后四个字符&#xff0c;我们只要判断一下有没有这个月份和这个日期。 具体…

线程相关

1、启动线程1.11 new Handler()形式new Handler(mContext.getMainLooper()).post(newOnekeyBindFrameActivity.NetworkThread());1.12new Handler().postDelayed(new StatusCheckLoginBindFrameThread(), IoTCultivatePlantConfig.START_ACTIVITY_POST_DELAYED);1.2 new Thread…

验证Oracle收集统计信息参数granularity数据分析的力度

最近在学习Oracle的统计信息这一块&#xff0c;收集统计信息的方法如下&#xff1a; DBMS_STATS.GATHER_TABLE_STATS (ownname VARCHAR2, ---所有者名字tabname VARCHAR2, ---表名partname VARCHAR2 DEFAULT NULL, ---要分析的分区名estimate_percent NUMBER DEFAULT NULL, …

Python之NumPy(axis=0 与axis=1)区分

Python之NumPy&#xff08;axis0 与axis1&#xff09;区分 转载于:https://www.cnblogs.com/greatljg/p/10802392.html

Python Web开发:开发wsgi中间件

本文参考了&#xff1a; github.com/alanctkc/ws…Youtube : Creating WSGI Middleware上篇文章简要提到&#xff1a;wsgi 规范中的 app 是一个可调用对象&#xff0c;可以通过嵌套调用的方式实现中间件的功能。这篇文章就来亲自动手实现一下。 此文的重点在于 app 端&#xff…

20165320 第九周学习总结

主要内容&#xff1a; 1.URL类 URL类是java.net包中的一个重要的类&#xff0c;使用URL创建对象的应用程序称为客户端程序。URL 的构造方法&#xff1a;try { URL url new URL ("http://www.google.com"); } catch (MalformedURLException e) {System.out.println(&…

Python 函数的执行流程-函数递归-匿名函数-生成器

1 函数的执行流程函数的执行需要对函数进行压栈的&#xff0c;什么是压栈呢&#xff0c;简而言之就是在函数执行时在栈中创建栈帧存放需要变量以及指针的意思。具体涉及的知识非常多&#xff0c;这里就已一个Python脚本简单进行分析。当我们运行上面代码时&#xff0c;它的执行…

python 课堂笔记-for语句

for i in range(10):print("----------",i)for j in range(10):print("world",j)if j> 5:break 转载于:https://www.cnblogs.com/leon-zyl/p/7542466.html

【2】信息的表示和处理

1.现代计算机存储和处理的信息都以二值信号表示。 2.机器为什么要使用二进制进行存储和处理&#xff1f; 答&#xff1a;二值信号能够很容易的被表示、存储、传输。例如&#xff1a; 可以表示为穿孔卡片上有洞和无洞、导线上的高压和低压&#xff0c;顺逆时针的磁场。 3.大多数…

java版b2b2c社交电商spring cloud分布式微服务(二) 服务消费者(rest+ribbon)

一、ribbon简介 Ribbon is a client side load balancer which gives you a lot of control over the behaviour of HTTP and TCP clients. Feign already uses Ribbon, so if you are using FeignClient then this section also applies. —–摘自官网 ribbon是一个负载均衡客…

[学习笔记]支配树

被支配树支配的恐惧 定义 显然&#xff0c;这个支配关系是一个树&#xff08;或者如果有的点不能从r到达&#xff0c;就是一个树一堆点&#xff09;。 首先不会成环&#xff0c;其次也不会是DAG 即如果A支配C&#xff0c;B支配C&#xff0c;那么A和B之间必然有支配关系 解法 首…

RBAC 权限设计(转载)

来源 &#xff1a;https://blog.csdn.net/rocher88/article/details/43190743 这是我在网上找的一些设计比较好的RBAC权限管理不知道&#xff0c;像新浪、搜狐、网易、百度、阿里巴巴、淘宝网的RBAC用户权限这一块&#xff0c;都是这种细颗粒的RBAC设计开发&#xff0c;还是把他…

54.get set

当程序查询对象属性时调用get方法,如果只有get方法那么他是一个只读属性&#xff0c;//程序对对象属性进行赋值操作时调用set方法&#xff0c;如果只有set方法那么他是是一个只读属性 <script type"text/javascript">var p {x:1.0,y:1.0,//当程序查询对象属性…

Codeforces Round #554 Div.2 E - Neko and Flashback

欧拉路径 神题啊神题&#xff01;这道题的突破口就是后两个数组每个元素是一一对应的。 也就是说&#xff0c;对于一个p的排列&#xff0c;b和c取得每一个元素的下标在p中都是一样的。 根据b和c数组的性质可以得出&#xff0c;b[i] < c[i]。 这也是我们输出-1的一个判断方法…

20172311 2017-2018-2 《程序设计与数据结构》第八周学习总结

20172311 2017-2018-2 《程序设计与数据结构》第八周学习总结 教材学习内容总结 本周对JAVA中的多态性进行了学习 多态性引用能够随时间变化指向不同类型的对象&#xff0c;是通过后绑定实现的。实现多态性的主要途径有两种&#xff1a; 1.由继承实现多态性 2.利用接口实现多态…

Linux系统安装Apache 2.4.6

http://www.cnblogs.com/kerrycode/p/3261101.html Apache简介 Apache HTTP Server&#xff08;简称Apache&#xff09;是Apache软件基金会的一个开放源码的网页服务器&#xff0c;可以在大多数计算机操作系统中运行&#xff0c;由于其多平台和安全性被广泛使用&#xff0c;是最…

深浅拷贝

lst1 ["金毛狮王", "紫衫龙王", "白眉鹰王", "青翼蝠王"] lst2 lst1 print(lst1) print(lst2) lst1.append("杨逍") print(lst1) print(lst2) # 结果: # [金毛狮王, 紫衫龙王, 白眉鹰王, 青翼蝠王, 杨逍] # [金毛狮王 紫衫…

lnmp化境开启pathinfo,支持tp5.0等访问

一、 开启pathinfo   #注释 下面这一行 #include enable-php.conf #载入新的配置文件 include enable-php-pathinfo.conf #添加如下location / {if (!-e $request_filename){rewrite ^/(.*)$ /index.php/$1 last;break;}}location ~ /index.php {fastcgi_pass 127.0.0.1:…

深度解密GO语言之反射

反射和 Interface 息息相关&#xff0c;而 Interface 是我们上一篇文章的内容。在开始正文前&#xff0c;和大家说点题外话。 上一篇关于 Interface 的文章发出后&#xff0c;获得了很多的关注和阅读。比如&#xff0c;登上了 GoCN 的每日新闻第一条&#xff1a; 可能是编辑者觉…