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();
时间: 2024-10-11 05:19:43

python 网页爬取数据生成文字云图的相关文章

Python爬虫爬取数据的步骤

爬虫: 网络爬虫是捜索引擎抓取系统(Baidu.Google等)的重要组成部分.主要目的是将互联网上的网页下载到本地,形成一个互联网内容的镜像备份. 步骤: 第一步:获取网页链接 1.观察需要爬取的多网页的变化规律,基本上都是只有小部分有所变化,如:有的网页只有网址最后的数字在变化,则这种就可以通过变化数字将多个网页链接获取: 2.把获取得到的多个网页链接存入字典,充当一个临时数据库,在需要用时直接通过函数调用即可获得: 3.需要注意的是我们的爬取并不是随便什么网址都可以爬的,我们需要遵守我们的

python爬虫—爬取百度百科数据

爬虫框架:开发平台 centos6.7 根据慕课网爬虫教程编写代码 片区百度百科url,标题,内容 分为4个模块:html_downloader.py 下载器 html_outputer.py 爬取数据生成html模块 html_parser 获取有用数据 url_manager url管理器 spider_main 爬虫启动代码 spider_main.py 1 #!/usr/bin/python 2 #-*- coding: utf8 -*- 3 4 import html_download

python爬虫爬取QQ说说并且生成词云图,回忆满满!

Python(发音:英[?pa?θ?n],美[?pa?θɑ:n]),是一种面向对象.直译式电脑编程语言,也是一种功能强大的通用型语言,已经具有近二十年的发展历史,成熟且稳定.它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务.它的语法非常简捷和清晰,与其它大多数程序设计语言不一样,它使用缩进来定义语句. Python支持命令式程序设计.面向对象程序设计.函数式编程.面向切面编程.泛型编程多种编程范式.与Scheme.Ruby.Perl.Tcl等动态语言一样,Python具备垃圾回收

python之爬取网页数据总结(一)

今天尝试使用python,爬取网页数据.因为python是新安装好的,所以要正常运行爬取数据的代码需要提前安装插件.分别为requests    Beautifulsoup4   lxml  三个插件. 因为配置了环境变量,可以cmd命令直接安装.假如电脑上有两个版本的python,建议进入到目录安装. 安装的命令为 pip install requests(Beautifulsoup4   /lxml  ) 三条分别执行. 安装结束,可以尝试网上一些简单的例子,明白了解 Beautifulso

python爬虫——爬取网页数据和解析数据

1.网络爬虫的基本概念 网络爬虫(又称网络蜘蛛,机器人),就是模拟客户端发送网络请求,接收请求响应,一种按照一定的规则,自动地抓取互联网信息的程序.只要浏览器能够做的事情,原则上,爬虫都能够做到. 2.网络爬虫的功能   图2 网络爬虫可以代替手工做很多事情,比如可以用于做搜索引擎,也可以爬取网站上面的图片,比如有些朋友将某些网站上的图片全部爬取下来,集中进行浏览,同时,网络爬虫也可以用于金融投资领域,比如可以自动爬取一些金融信息,并进行投资分析等. 有时,我们比较喜欢的新闻网站可能有几个,每次

Python爬虫爬取房天下数据-入MySql数据库

Python爬取房天下某城市数据 随着互联网时代的兴起,技术日新月异,掌握一门新技术对职业发展有着很深远的意义,做的第一个demo,以后会在爬虫和数据分析方便做更深的研究,本人不会做详细的文档,有哪里不足的地方,希望大牛们指点讲解.废话不多说,上代码. 你需要的技能: (1)对前端知识熟悉会调试浏览器 (2)熟练python基础知识,对一些常用的库熟练掌握 (3)掌握一般关系型数据库 import requests as req import time import pandas as pd f

利用Python来爬取“吃鸡”数据,为什么别人能吃鸡?

首先,神装镇楼背景 最近老板爱上了吃鸡(手游:全军出击),经常拉着我们开黑,只能放弃午休的时间,陪老板在沙漠里奔波. 上周在在微信游戏频道看战绩的时候突发奇想,是不是可以通过这个方式抓取到很多战斗数据,然后分析看看有什么规律.秀一波战绩,开黑情况下我们团队吃鸡率非常高,近100场吃鸡次数51次简单评估了一下,觉得可行,咱就开始. Step 1 分析数据接口 第一步当然是把这些战绩数据采集下来,首先我们需要了解页面背后的故事.去看看页面是如何获取战斗数据的. 使用Charles抓包 抓包实现 在M

Python爬虫爬取知乎小结

博客首发至Marcovaldo's blog (http://marcovaldong.github.io/) 最近学习了一点网络爬虫,并实现了使用python来爬取知乎的一些功能,这里做一个小的总结.网络爬虫是指通过一定的规则自动的从网上抓取一些信息的程序或脚本.我们知道机器学习和数据挖掘等都是从大量的数据出发,找到一些有价值有规律的东西,而爬虫则可以帮助我们解决获取数据难的问题,因此网络爬虫是我们应该掌握的一个技巧. python有很多开源工具包供我们使用,我这里使用了requests.Be

用Python爬虫爬取广州大学教务系统的成绩(内网访问)

用Python爬虫爬取广州大学教务系统的成绩(内网访问) 在进行爬取前,首先要了解: 1.什么是CSS选择器? 每一条css样式定义由两部分组成,形式如下: [code] 选择器{样式} [/code] 在{}之前的部分就是"选择器"."选择器"指明了{}中的"样式"的作用对象,也就是"样式"作用于网页中的哪些元素.可参考:http://www.w3school.com.cn/cssref/css_selectors.asph