当前位置:首页 > 话题广场 > 攻略专题 > 游戏问答

qq里面怎么别人的说说?我来告诉你答案我的第一个Python爬虫:动态爬取QQ说说并生成词云,分析朋友状况

参考资料:python技术的最佳

可能需要Pip install lxml等库

此脚本基于python3、脚本路径D:\python\运行。以下是脚本内容

-银

#coding:utf-8

Import time

From selenium import网路驱动程式

From lxml导入树

#必须设置编码格式,以便下次写入文件时不报告错误

Import sys

#reload(sys)

#( 'utf-8 ')

#python3默认系统编码为UTF-8

Friend=[1] #根据朋友的QQ号码、朋友的空间要求,可以访问

用户=[2] #您的QQ号

Pw=[3] #您的QQ密码

#获取浏览器驱动程序

#driver=webdriver。Firefox()

驱动程序=webdriver.chrome()

#driver=webdriver。Chrome()

#最大化浏览器窗口

#driver.maximize_window()

#浏览器地址将转到QQ登录页面

司机。get(';)。

#因此,必须在此处选择帧。否则,将找不到下面所需的web元素

驱动程序.(' login _ frame ')

#自动单击帐户登录方法

driver . find _ element _ by _ id(' switcher _ plog in ')。click()

#在帐户输入框中输入已知的QQ帐户

Driver.find _ element _ by _ id ('u ')。send _ keys(用户)

#密码框输入已知密码

Driver.find _ element _ by _ id ('p ')。send _ keys (pw)

#自动单击登录按钮

driver . find _ element _ by _ id(' log in _ button ')。click()

#让webdriver操作当前页面

司机。()

#转到URL,friend您可以随意更改为想要访问的空间

司机。get(';Friend '/311 ')

Next_num=0 #初始“下一个”的id

While True:

#使用下拉滚动条使浏览器加载动态加载的内容。

#我从1到6每5页加载数据

For I in range(1,6):

Height=20000*i#一次滑动20000像素

Strword=' window.scrollby (0,' str (height)')'

Driver.execute_script(strWord)

(4)

#大多数情况下,网页由多个帧或iframe组成,webdriver默认情况下会查找最外部的帧(frame)。

#因此,必须选择此处的“帧”(frame)。否则,将找不到下面所需的web元素

驱动程序.(' app _ canvas _ frame ')

Selector=e)

divs=('//*[@ id=' msg list ']/Li/div[3]')

#其中a表示可以在不清空内容的情况下写入

with open(' d : \ python \ QQ _ word . txt ',' a') as f3360

For div in divs:

Qq _ name=div.xpath(' ./div [2]/a/text()')

Qq _ content=div.xpath('./div [2]/pre/text()')

Qq _ time=div.xpath(' ./div [4]/div [1]/span/a/text()')

QQ _ name=QQ _ name[0]if len(QQ _ name)0 else ' '

QQ _ content=QQ _ content[0]if len(QQ _ content)0 else ' '

QQ _ time=QQ _ time[0]if len(QQ _ time)0 else ' '

打印(QQ _ name、QQ _ time和QQ _ content)

F.write(qq_content '\n ')

#如果已经到达结束页,“下一步”按钮没有id,可以结束

Ifdriver。(' pager _ next _ ' str(next _ num))=-1:

布雷克

#请找到“下一步”按钮,因为下一页上的按钮会动态更改。必须动态记录在此处

driver . find _ element _ by _ id(' pager _ next _ ' str(next _ num))。click()

#“下一页”的id

Next_num=1

#在下一个循环中,必须先向下翻页,所以必须跳到外部帧上

司机。()

-以上代码内容-

从Cmd命令行运行脚本

python d :/python/“你的朋友QQ号”“你的QQ号”“你的QQ密码”

命令行执行的结果如下:

web界面多次测试登录触发器安全机制,因此可以进行代码登录。没问题。手机QQ扫描队列(QR)代码登录。

生成词云

生成词云需要用到的库:

wordcloud, 生成词云

matplotlib, 生成词云图片

jieba ,这个库可用可不用,但我因为中文一直显示不出来,后来加上了这个库,就能显示中文了。

pip install wordcloud

pip install matplotlib

pip install jieba

代码名字ciyun.py以下是代码

---------------------------------------------------------

#coding:utf-8

"""

使用结巴分词生成云图

说明这里

1.生成词云一定要设置字体样式,否则汉字出现乱码或者不显示

2.我不知道为什么本机一直显示不了中文,后面我加了jieba分词词库就可以显示中文了

"""

from wordcloud import WordCloud

import ma as plt

import jieba

#生成词云

def create_word_cloud(filename):

text= open("{}".format(filename)).read()

# 结巴分词

wordlist = jieba.cut(text, cut_all=True)

wl = " ".join(wordlist)

# 设置词云

wc = WordCloud(

# 设置背景颜色

background_color="white",

# 设置最大显示的词云数

max_words=2000,

# 这种字体都在电脑字体中,一般路径

font_path='C:\Windows\Fonts\;,

height= 1200,

width= 1600,

# 设置字体最大值

max_font_size=100,

# 设置有多少种随机生成状态,即有多少种配色方案

random_state=30,

)

myword = wc.generate(wl) # 生成词云

# 展示词云图

(myword)

("off")

()

wc.to_file('d:\python\;) # 把词云保存下

if __name__ == '__main__':

create_word_cloud('d:\python\qq_word.txt')

------------------------------以上是代码---

执行代码

C:\Users\huangshumao>python d:\python\ciyun.py

Building prefix dict from the default dictionary ...

Dumping model to file cache C:\Users\HUANGS~1\AppData\Local\Temp\jieba.cache

Loading model cost 0.868 seconds.

Prefix dict has been built succesfully.

附上我代码目录截图

---------------------

版权声明:本文为CSDN博主「运维自动化&云计算」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。

原文链接:

1.《qq里面怎么别人的说说?我来告诉你答案我的第一个Python爬虫:动态爬取QQ说说并生成词云,分析朋友状况》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《qq里面怎么别人的说说?我来告诉你答案我的第一个Python爬虫:动态爬取QQ说说并生成词云,分析朋友状况》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/gl/3215030.html

上一篇

qq里面怎么别人?总结很全面速看!QQ出现大规模盗号!自动给好友和群发送低俗不雅内容 网友:已社死

qq里面怎么别人的说说?终于找到答案了自带瘦身功能 手机QQ 8.1.0版详细体验

qq里面怎么别人的说说相关介绍,Android手机QQ更新!前几天手机QQ打开了版本8.1.0的内测,现在正式版本也来了。 这次的版本更新给用户带来了一个全新的简洁界面模式,还有手账、长图等的新增功能,赶紧来看看吧。 化繁为简 全新...

qq里面怎么别人的说说?终于找到答案了12句QQ空间“访客暴增”的说说,字字珠玑,赶紧收藏吧

qq里面怎么别人的说说相关介绍,1.世界上最好的默契,不是有人理解你的言外之意,而是有人知道你的话后又停下来。 2、你本就不快乐,为什么还要替别人难过? 3、我一人,趟过浑水,越过四季,百无表情。 4、喜则留,厌则走,多说一句都是求...