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

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

Python支持命令式程序设计、面向对象程序设计、函数式编程、面向切面编程、泛型编程多种编程范式。与Scheme、Ruby、Perl、Tcl等动态语言一样,Python具备垃圾回收功能,能够自动管理存储器使用。它经常被当作脚本语言用于处理系统管理任务和网络程序编写,然而它也非常适合完成各种高级任务。Python虚拟机本身几乎可以在所有的作业系统中运行。使用一些诸如py2exe、PyPy、PyInstaller之类的工具可以将Python源代码转换成可以脱离Python解释器运行的程序。

自学过一段时间的python,用django自己做了个网站,也用requests+BeautifulSoup

爬虫过些简单的网站,周末研究学习了一波,准备爬取QQ空间的说说,并把内容存在txt中,读取生成云图。

好久不登qq了,空间说说更是几年不玩了,里面满满的都是上学时候的回忆,看着看着就笑了,笑着笑着就...哈哈哈~~

无图言虚空

当年的我还是那么风华正茂、幽默风趣...

言归正传,本次使用的是

selenium

模拟登录+

BeautifulSoup4

爬取数据+

wordcloud

生成词云图

BeautifulSoup安装

pip install beautifulsoup4

这里有beautifulsoup4 的 官方文档

还需要用到解析器,我选择的是

html5lib

解析器

pip install html5lib

下表列出了主要的解析器,以及它们的优缺点:

selenium模拟登录

使用selenium模拟登录QQ空间,安装

pip install selenium

我用的是chrom浏览器,

webdriver.Chrome()

,获取Chrome浏览器的驱动。

这里还需要下载安装对应浏览器的驱动,否则在运行脚本时,会提示

chromedriver executable needs to be in PATH

错误,用的是mac,网上找的一篇下载驱动的文章

同理window的也一样,下载对应的驱动,解压后,将下载的**.exe 放到Python的安装目录,例如 D:\python 。 同时需要将Python的安装目录添加到系统环境变量里。

python学习路线分三大阶段:基础-进阶-框架-项目实战

基础第一阶段:基础Python的理解。基础第二阶段面对对象编程(注重编程能力)

基础第三阶段面向对象“设计思想”-封装-继承。基础第四阶段python高级专题。

进阶班第一阶段:linux基础。第二:python web工具。第三python部署工具。

第四关系型数据库。第五Python web框架基础原理。

框架阶段.python web开发第一阶段web.py。基础第二Django基础。

第三flask基础。第四tornado基础,

项目实战:个人博客系统-微信开发-企业OA系统=网盘系统。

qq登录页http://i.qq.com,利用webdriver打开qq空间的登录页面

driver = webdriver.Chrome()driver.get("http://i.qq.com")

打开之后右击检查查看页面元素,发现帐号密码登录在

login_frame

里,先定位到所在的frame,

driver.switch_to.frame("login_frame")

,再自动点击 帐号密码登录 按钮,自动输入帐号密码登录,并且打开说说页面,详细代码如下,

这个时候可以看到已经打开了qq说说的页面了,注意部分空间打开之后会出现一个提示框,需要先模拟点击事件关闭这个提示框

tm我以前竟然还有个黄钻,好可怕~~,空间头像也是那么的年轻、主流...

同时因为说说内容是动态加载的,需要自动下拉滚动条,加载出全部的内容,再模拟点击 下一页 加载内容。具体代码见下面。

BeautifulSoup爬取说说

F12查看内容,可以找到说说在feed_wrap这个

,里面的

标签数组里面,具体每条说说内容在

class="bd"的

标签中。

至此QQ说说已经爬取下来,并且保存在了qq_word文件里

接下来生成词云图

词云图

使用wordcloud包生成词云图,pip install wordcloud

这里还可以使用jieba分词,我并没有使用,因为我觉得qq说说的句子读起来才有点感觉,个人喜好,用jieba分词可以看到说说高频次的一些词语。

设置下wordcloud的一些属性,注意 这里要设置font_path属性,否则汉字会出现乱码。

这里还有个要提醒的是,如果使用了虚拟环境的,不要在虚拟环境下运行以下脚本,否则可能会报错 RuntimeError: Python is not installed as a framework. The Mac OS X backend will not be able to function correctly if Python is not installed as a framework. See the Python documentation for more information on installing Python as a framework on Mac OS X. Please either reinstall Python as a framework, or try one of the other backends. If you are using (Ana)Conda please install python.app and replace the use of ‘python‘ with ‘pythonw‘. See ‘Working with Matplotlib on OSX‘ in the Matplotlib FAQ for more information. ,我就遇到了这种情况,deactivate 退出了虚拟环境再跑的

至此,爬取qq说说内容,并生成词云图。

Python可以做什么?

web开发和 爬虫是比较适合 零基础的

自动化运维 运维开发 和 自动化测试 是适合 已经在做运维和测试的人员

大数据 数据分析 这方面 是很需要专业的 专业性相对而言比较强

科学计算 一般都是科研人员 在用

机器学习 和 人工智能 首先 学历 要求高 其次 高数要求高 难度很大

我有一个微信公众号,经常会分享一些python技术相关的干货;如果你喜欢我的分享,可以用微信搜索“python语言学习”关注

欢迎大家加入千人交流答疑裙:588+090+942

原文地址:https://www.cnblogs.com/pythonyezi/p/9142274.html

时间: 2024-10-29 19:08:54

python爬虫爬取QQ说说并且生成词云图,回忆满满!的相关文章

Python爬虫b站视频弹幕并生成词云图分析

爬虫:requests,beautifulsoup 词云:wordcloud,jieba 代码加注释: 1 # -*- coding: utf-8 -*- 2 import xlrd#读取excel 3 import xlwt#写入excel 4 import requests 5 import linecache 6 import wordcloud 7 import jieba 8 import matplotlib.pyplot as plt 9 from bs4 import Beaut

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

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

python爬虫爬取csdn博客专家所有博客内容

python爬虫爬取csdn博客专家所有博客内容: 全部过程采取自动识别与抓取,抓取结果是将一个博主的所有 文章存放在以其名字命名的文件内,代码如下 结果如下: 版权声明:本文为博主原创文章,未经博主允许不得转载.

python爬虫爬取美女图片

python 爬虫爬取美女图片 #coding=utf-8 import urllib import re import os import time import threading def getHtml(url): page = urllib.urlopen(url) html = page.read() return html def getImgUrl(html,src): srcre = re.compile(src) srclist = re.findall(srcre,html)

Python爬虫爬取博客园并保存

Python爬虫爬取博客园并保存        爬取博客园指定用户的文章修饰后全部保存到本地 首先定义爬取的模块文件: crawlers_main.py 执行入口 url_manager.py url管理器 download_manager.py 下载模块 parser_manager.py html解析器(解析html需要利用的内容) output_manager.py 输出html网页全部内容文件(包括css,png,js等) crawlers_main.py 执行入口 1 # coding

python爬虫—爬取英文名以及正则表达式的介绍

python爬虫—爬取英文名以及正则表达式的介绍 爬取英文名: 一.  爬虫模块详细设计 (1)整体思路 对于本次爬取英文名数据的爬虫实现,我的思路是先将A-Z所有英文名的连接爬取出来,保存在一个csv文件中:再读取csv文件当中的每个英文名链接,采用循环的方法读取每一个英文名链接,根据每个英文名链接爬取每个链接中的数据,保存在新的csv文件当中. 需要写一个爬取英文名链接的函数.将爬取的内容保存在csv文件的函数以及读取csv文件内容的函数.爬取英文名详情页内容的函数. 表5.3.1 函数名

python爬虫爬取微博评论案例详解

这篇文章主要介绍了python爬虫爬取微博评论,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 数据格式:{"name":评论人姓名,"comment_time":评论时间,"comment_info":评论内容,"comment_url":评论人的主页} 以上就是我们需要的信息. 具体操作流程: 我们首相将主页获取完成以后,我们就会发现,其中 的内容带有相

Python爬虫爬取知乎小结

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

Python爬虫爬取一篇韩寒新浪博客

网上看到大神对Python爬虫爬到非常多实用的信息,认为非常厉害.突然对想学Python爬虫,尽管自己没学过Python.但在网上找了一些资料看了一下,看到爬取韩寒新浪博客的视频.共三集,第一节讲爬取一篇博客,第二节讲爬取一页博客.第三集讲爬取所有博客. 看了视频.也留下了代码. 爬虫第一步:查看网页源码: 第一篇博客的代码为蓝底的部分<a title="" target="_blank" href="http://blog.sina.com.cn/