楼主: littlelianglian
2033 5

[网帖精选] Python分析新浪微博各种表情使用频率 [推广有奖]

贵宾

学术权威

72%

还不是VIP/贵宾

-

威望
3
论坛币
497776 个
通用积分
9293.7569
学术水平
355 点
热心指数
303 点
信用等级
328 点
经验
105005 点
帖子
3169
精华
16
在线时间
3268 小时
注册时间
2013-9-4
最后登录
2023-12-23

一级伯乐勋章 初级学术勋章 初级信用勋章

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

主题:用新浪微博API积累了微博广场的1.4万条数据,我选择了21个字段输出为TXT文件,想用Python稍微处理一下,统计一下这1.4万条微博里面表情使用情况,统计结构在最后。

无聊的时候用了下新浪JAVA版的API,对JAVA还不熟悉,但是稍微改一下还是没问题的,数据保存为TXT文件,再用Python处理,JAVA部分很简单,Python部分只涉及到表情的正则提取,都不好意思写出来了。

1、调用新浪JAVA API下载微博广场数据
步骤思路:
初始化API的Weibo类,设置Token后,设置下载间隔,然后重复调用getPublicTimeline()函数就可以了,下面是主要类的代码:
这个不是完整的代码,没有初始化暂停间隔,可以掠过,很简单。

View Code


2、数据格式:


要取得数据就是微博内容,先练一下手玩玩。

3、Python处理数据
目标:查看微博用户表情使用情况,暂时只分性别,如果积累了合适的数据后可以分析各个时间段人们爱用哪种表情。
步骤:
$ 读取TXT文件,递归处理每一行
$ 单独提取出微博字段,正则提取表情字段,同时把性别提取出来,放到一个dict里面,dict的格式是:表情/女性使用频率/男性使用频率,递归处理,累积频率
$ 把结果写入到文件
注意:Python正则提取中文部分,先解码成unicode编码,再正则提取,表情的标志是[],虽有误差,但无大碍。
代码:
__collection函数是处理函数,返回处理结果(dict)

View Code

脚本运行结果:


把结果放到EXCEL里面重新排序,得到如下结果:



-============================================================

本文为转载


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:python 新浪微博 Collection Python处理 unicode 新浪微博 时间段 Token 主题 JAVA

已有 1 人评分论坛币 收起 理由
狂热的爱好者 + 60 精彩帖子

总评分: 论坛币 + 60   查看全部评分




CDA数据分析交流群 217748971
沙发
kenshinlong 发表于 2014-7-2 16:22:32 |只看作者 |坛友微信交流群
有点意思

使用道具

藤椅
songlinjl 发表于 2014-7-2 17:21:00 |只看作者 |坛友微信交流群
多谢多谢

使用道具

板凳
LIXUANHANK 学生认证  发表于 2014-7-2 17:23:47 来自手机 |只看作者 |坛友微信交流群
littlelianglian 发表于 2014-7-2 15:56
主题:用新浪微博API积累了微博广场的1.4万条数据,我选择了21个字段输出为TXT文件,想用Python稍微处理一下 ...
挺有趣!

使用道具

报纸
长线小白龙 在职认证  企业认证  发表于 2014-7-3 07:36:36 |只看作者 |坛友微信交流群
女用户发的明显比男用户多啊。。。。。。。。。。。。。

使用道具

地板
狂热的爱好者 学生认证  发表于 2014-7-3 22:40:43 |只看作者 |坛友微信交流群
实用贴啊

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-19 17:00