QQ2013的PC版协议,0825包和0826的数据分析

简介: http://www.cctry.com/thread-146696-1-1.html   最近写个QQPC协议返回当前QQ各种状态的东东。

http://www.cctry.com/thread-146696-1-1.html

 

最近写个QQPC协议返回当前QQ各种状态的东东。网上很多地方说的都有点不太明白,而且最新协议的也很少,基本都是以前的。苦逼之下借鉴各种资料,熬了几天。终于写出来了。因为只返回各种状态,,所以偶分析到0826这个数据包。后面的也就没分析了。虽然东西不多。。也希望能帮到对这方面有星期的朋友吧。。下面是分析的内容。。 腾讯的数据包都是用的tea加密算法。我们要先解密。。。才能看到真正的内容

搞忘记了。 用到的工具。。 QQCrypter.rar (163.27 KB, 下载次数: 83)

2013-1-14 01:07 上传
点击文件名下载附件



抓包工具自行选择吧。。


[2013/1/13 22:49:38:144](发送的数据包)

02 //包头  腾讯所有发送的数据包都是以这个开头

2F 35 //版本号  QQ版本不同。这个东西也会变

08 25 // 命令  首次跟服务器接触发送滴。。

4B B1 //序号  这个东东是随机的 。。。  随机生成这个就可以了。

39 80 8C 2C // QQ号的HEX   转换过来就是 964725804

03 00 00 00 01 01 01 00 00 65 A6 00 00 00 00    //这个是固定的。。具体啥么东西,不清楚

3E 59 4A DF 55 04 B1 AD 22 33 9F B3 E1 C3 CC D7 //这个是随机的tea key  软件里随机生成就可以

-------------------------------------------------------------------------------以下就是经过 tea key加密后的数据了

39 16 78 35 92 0F 3D 37 95 4C 7C C8 8E 26 5C E6
D4 D9 47 C0 EE 30 08 94 BE 08 AC 8C 14 C8 CD 1A
90 CF 7F 01 AE 8D 55 75 51 56 D9 A7 92 6B A0 C6
79 00 BF 99 47 06 8F 5C D9 2C 6B 97 C9 D4 AE 79
C1 31 1B AC A6 0E 5F 9C

----------------------------------------------------------------------------- 以下是经过tea key解密后的数据

00 18 00 16 00 01 //token1  固定的6的长度 这些后续的发包里需要用到。所以要记下来,好方便后面组合

00 00 04 11 00 00 00 01 00 00 12 91 //token2  固定的 12的长度

39 80 8C 2C //这个是QQ号

00 00 00 00 01 14 00 19 01 01 //固定的数据

00 15 //这个呢。下面数据大小 16进制的15 换成10进制就是21 下面刚刚好是21的长度

03 2A 37 9C 8E 0B 74 A2 F1 E5 47 56 0B 02 CE 2C D0 0A 83 9E D2 //这21的长度是随机的。随便生成

-----------------------------------------------------------------------------
03 //包尾  腾讯所有发送的数据包都是以这个结尾


[2013/1/13 22:49:38:238](接收的数据)
02
2F 35
08 25
4B B1
39 80 8C 2C //前面的和上面的意思一样。这个是QQ的返回包

00 00 00 //用固定的 00 00 00隔开了

--------------------------------------------------------------------------------以下是加密数据,用发送的那个tea key解密

30 10 39 3F 8B 13 9F 79 36 24 8A 07 78 25 94 C7 2C 50
D1 2A 3D B1 54 5E 19 8C 93 EA 10 4E 5E 99 80 96
C0 D0 39 39 6C 14 D2 53 D9 35 C4 95 4A 3B 60 94
80 9C F8 B5 D9 8B DC 65 D6 3F C1 6C DA 10 4A A3
9A CC BA FB 98 44 6B B2 91 53 7F A8 94 A0 11 38
BB EA 8B 89 22 1B 51 94 87 1B 77 22 00 EE EB 43
EE E1 7B 9F 4F E0 F8 10 20 66 DC 97 E6 A5 EA D4
F4 DD 02 A5 3C CA
-------------------------------------解密出来的数据

FE // 服务器IP需要中转..。。。其实根据接收的数据包大小就可以知道。需要中转的话 接收的数据包是135的长度,不需要的话是111的长度

01 12 // 固定
00 38 //0038的token 38的10进制是56,下面56的长度后就可以是下一个命令了,这些数据在 0826包都需要

D8 62 09 42 21 5C FE 51 C6 E6 07 C6 0A 3A 2A 7F 7B 50 E0 86 A3 0F 7E 10 FB A4 04 E6 DA 6E 9B BF 19 CA 64 52 2E 27 FB B0 9C 68 A0 4F BA 6A EC 9B 24 F4 F3 14 BF A1 D8 5F

00 17 00 0E 00 01 //固定了

50 F2 C9 3F //这个是连接的时间 2013-01-13 22:48:31

7B B6 90 44 //偶的本机IP  123.182.144.68  

BD 0B 00 00 00 0C 00 16 00 02 00 00 00 00 00 09 00 00 00 00

70 5A 54 65 //中转的服务器IP 112.90.84.101  这里把解密出来的IP地址直接放到socket的IP设置那里就可以了,

00 00 00 00 00 00
---------------------------------------------------------
03 //包尾


[2013/1/13 22:49:38:144](给中转过后的IP发送0825包)

02
2F 35
08 25
42 0A //这个应该是上面的序号+1才对  不过不知道肿么回事,我这里刚刚出了一堆中转。呵呵

39 80 8C 2C //qq

03 00 00 00 01 01 01 00 00 65 A6 00 00 00 00 //以上的就不分析了啊。。根据上面的看就知道了

E6 F0 06 96 1A E0 CB C4 5C FA 20 1B 98 C4 84 EE //重新随机生成的tea key
----------------------------------------------------------------------------加密数据 用上面的key解密

56 F0 09 B9 F5 D6
79 7D 2B 8F 18 79 F6 54 75 8D 6C BA CD C4 BF E0
8E 14 00 0B 92 67 DF D6 20 F7 EE 77 EC 84 1C 18
0B 2F B7 34 67 83 4B 5E B9 70 F8 FC 51 63 04 52
9D 05 5C 21 58 14 AA E4 2F 4D 69 13 E2 1D ED 78
91 C4
---------------------------------------------------------------------------以下是解密数据

//是不是很熟,这个就是第一次发包的数据,其实下面的都是和第一次一样的。重发了一遍而已
//所以捏。。偶就不解释了。。


00 18 00 16 00 01
00 00 04 11 00 00 00 01 00 00 12 91
39 80 8C 2C
00 01 00 00 01 14 00 19 01 01
00 15
03 2A 37 9C 8E 0B 74 A2 F1 E5 47 56 0B 02 CE 2C D0 0A 83 9E D2
---------------------------------------------------------------------------
03 //包那个尾

[2013/1/13 22:49:38:191] 其实呢。这个包的大小是111的,也就是说不需要中转了哈。

02
2F 35
08 25
42 0A
39 80 8C 2C
00 00 00 //以上都是一成不变的东东。

-------------------------------------------------------------------加密那个数据

06 11
B7 37 D9 EA 80 DE CC FB 88 89 D8 A2 60 70 18 57
5C 85 CB 64 92 82 33 3C D8 A3 FA B7 AA B4 28 C1
DB 07 0B 41 3F 9B 3E CD E8 55 42 4A 33 50 34 99
2B 41 68 7A E4 36 D9 4B F5 DC 7F 07 5E 0A 84 90
7F 63 49 EA 26 BC 06 6C D9 81 99 70 FF 9F E3 85
CA 84 3F A2 CD 32 4D 48 E2 F0 C1 06 11 8E

-----------------------------------------------------------------------------解密那个数据

00 //接触成功了。

01 12 //还是这个,,固定那个固定

00 38 //56长度的token 后续要用的噢。。

0B B4 8E C1 91 63 37 83 EF 7D 01 C2 73 D0 84 42 C2 2A 95 4E 63 6A 0E 82 D4 CF 65 87 46 67 F3 20 AD D1 49 42 94 3F 31 17 27 91 0C 38 90 82 6E 81 D0 8F CB 8E 41 B6 C9 45

00 17 00 0E 00 01

50 F2 C9 3F //很明显的时间。。

7B B6 90 44 //偶的IP地址

BD 06 00 00//其实。接收的包。记住一些下面的包需要用的数据就可以了。没用的像这些随机数据直接不用记

-----------------------------------------------------------------------------
03 //包包的尾部

[2013/1/13 22:49:38:207]   //  发送的包  0826了喔。。这个返回的是各种状态了

02
2F 35
08 26
2D F3
39 80 8C 2C
03 00 00 00 01 01 01 00 00 65 A6 00 00 00 00 //以上的东西。老样子。看第一个包的分析就知道了

2D 1A 48 4E 3C 62 52 CC 30 7B 66 B2 50 E2 1A 14 //0826 随机生成的tea key  或者叫随便生成的

-----------------------------------------------------------------------加密数据咯

F5 CC 47 E7 C8 8D
91 6E 11 E8 D3 41 34 DE 00 F8 05 DA 71 AB A1 67
70 2F 11 00 08 22 FA 94 DE 63 B5 74 EC 83 70 21
0A 7A 9B 83 EA 6B EC 5E 96 39 A5 2C 31 D8 D1 DE
25 53 7B CB 89 E8 DE C6 94 EA DF C9 55 61 B9 EA
E6 DC 06 92 69 A1 71 FA EE 93 1B 05 D8 13 FF 8E
2F 81 34 13 6A D4 8B B4 86 FC 80 DE F5 F3 9B 93
8E 48 F9 59 17 F1 44 B9 A8 66 FB 38 6B BE F5 FE
5B F4 FF 9B 0F 18 8D 13 20 0F E7 74 50 C4 C9 3F
51 84 1B 54 E8 06 61 76 A7 34 7D 3E AD 2D 2D 9A
6D A0 9D C2 30 D3 90 E1 9C B5 00 16 89 75 87 3D
B0 8D 37 FA C5 2C 1C BD 79 38 0E 3A A0 E9 04 34
20 54 4B 5F A6 33 52 AC F4 40 92 25 FE 66 AC F0
3B D1 FE CC FB 4E CF 6E 0D 23 1B A1 A9 63 70 8B
23 4B 75 C7 55 A9 5D B8 E7 C1 D6 DC EA A5 32 1C
81 30 CE 79 29 3B 83 21 87 84 20 80 5F 40 19 DC
4E E0 31 54 BF F6 03 69 D8 36 69 E7 DF A3 66 C5
35 85 7F CD BA EC 64 6D F0 04 47 49 7C EE 2A 63
8D 43 AF B6 18 DA 07 47 D2 B5 4B 34 D8 2D 7D B0
B4 BC 2C B8 0B 67 87 40 76 F0 54 29 04 41 DD CC
71 B6 01 40 70 1B E1 0B D7 4D 87 B1 73 4A 5B 49
EE 87 14 93 EE 76 17 E2 94 19 84 BA F0 5F 0E 82
89 69 E3 4B 9F 0E 7F F0 1D 18 94 EB AF EA BB 01
2B D6 D0 7D 63 32 E5 5B D7 F5 61 F7 7D 94 EE 74
31 87 F0 A9 61 8C 04 5B FB D9 E9 F3 B7 7E A2 69
80 A1 BB E6 72 83 01 63 92 9C BB 03 B6 C6 17 86
E9 1C 47 B1 98 C0 F4 5F E5 96 53 FC A8 E4 65 3C
A9 E1 2F 7B DC 62 BB 4A AF 39 71 9F E1 8D BE DD
E2 E5 99 06 08 53 87 72 1B 4C 84 5D 1C C2 56 81
E7 0B
-------------------------------------------------------------------------以下是解密数据  真多啊

01 12
00 38
0B B4 8E C1 91 63 37 83 EF 7D 01 C2 73 D0 84 42 C2 2A 95 4E 63 6A 0E 82 D4 CF 65 87 46 67 F3 20 AD D1 49 42 94 3F 31 17 27 91 0C 38 90 82 6E 81 D0 8F CB 8E 41 B6 C9 45
//////////上面的数据眼熟么,中转过后,0825包接收到的,这个包就当头给发出去了貌似就是令牌的意思吧

00 05 00 06 00 02 //固定这么几个字节。。。数据也是固定的

39 80 8C 2C //然后  QQ号

00 06

00 78
// 78 是16进制的,,10进制是120.。。也就是说。下面有120长度的数据时一个分水岭。噶
//。。这个也是加密的。解密的方式是QQ密码的一次MD5+00 00 00 00 +QQ号的hex


6E 44 7B 20 42 41 CE 47 9C 6C 25 F5 BD 06 48 54 47 7A 20 F9 19 8B CA AC 77 AD 6E 00 11 72 1D 67 08 CC CF BD 64 1D 68 DC 86 A6 DC 17 69 38 C6 90 5C 6D D9 A8 80 C7 D4 A3 16 B4 9A B2 5E B8 8C 0E 18 66 A6 C3 7A D8 80 86 97 67 64 87 FB FA FE 60 65 F0 E5 47 18 11 44 05 1D 7E B5 50 74 97 6B A7 7D 85 26 08 25 A4 43 1B 88 C8 39 A7 92 85 48 26 52 2A 1B 15 C8 33 F3 D0
------------------------------------------------------------------------------00 78的解密数据

4E 8B B4 0A //刚刚开始时4的长度,,随机的。。

00 01 //固定的

39 80 8C 2C //qq号

00 //固定

00 04 11 00 00 00 01 00 00 12 91 //眼熟么 0825里的

00 00 00 // 00的固定噢。

0A DC AF 06 5B F8 C6 99 4D 9C 42 16 27 12 D2 56
//这个是密码的一次MD5。。密码是yansh83082 反正QQ是
//冻结的 嘿嘿


50 F2 C9 3F //时间来了。。。

00 00 00 00 00 00 00 00 00 00 00 00 00 //固定长度的数据

7B B6 90 44 //偶的IP地址

00 00 00 00 00 00 00 //固定的

0C //这位会变。。不过固定貌似也没事。。怪了

00 10 // 16的长度

49 85 A1 B8 21 04 DA 46 9E 3F 17 C4 99 6E 4F DB //这个是固定的

D0 D4 42 1A 34 8E A9 9B BD C2 CF B8 B8 E1 B3 5A //这个是随机的。。用随机的这个解密下面 00 40的数据
------------------------------------------------------------------------------以上就是 0078的解密数据了

00 18 00 16 00 01 00 // 0825数据包里面的

00 04 11 00 00 00 01 00 00 12 91 //0825数据包里面的 token1 和token2 。。又拿过来了

39 80 8C 2C //QQ号

00 00 00 00 01 03 00 14 00 01 //固定的长度和数据

00 10 //0x10的10进制是16  16的长度  一般16的长度都是key   

ED A1 D3 F6 EC 73 DE 8F 1F 5C 4B 3C 2C CB 3B 3F //不过这个数据是固定的。。。

01 14 00 19 01 01 00 15 03 2A 37 9C 8E 0B 74 A2 F1 E5 47 56 0B 02 CE 2C D0 0A 83 9E D2 //还是0825里面的

01 02 00 62 00 01 //这个也是固定的

BD 1E 9F A1 BE EE F7 83 9C 07 D0 C9 91 0D 4E D9 //随机16的长度。。。不知道是个啥么的key反正这里没用
00 38 //0826 返回的令牌了。。

00 26 12 A1 AB 5C 0D 20 26 43 91 28 8C DB AE 62 70 B7 BB 92 16 5F 33 1C E3 F4 C3 C8 13 12 A0 C2 AA FA 1E E5 AD F1 7F 38 91 E3 08 B9 F4 4C 5B 5A 8B 59 00 4A 5C 4A 45 75

00 14 //14的10进制是20,下面分出20个来

62 96 52 20 9A 2E D1 94 B9 6F 35 F0 AF 1C 46 3C 1B D5 4A 5B

00 1A //固定数据

00 40 //40的10进制 64  下面是64个。。也是加密的。。。

0B 43 20 5C 6F 5D 29 A2 D3 84 6E F2 54 1B BE 12 68 52 A1 5B 6C BA 08 76 9F 23 CD 41 30 FC C8 F8 CB 76 2B 8B B2 5C A2 66 CD 23 30 89 BE 77 3A B5 00 2B 21 70 F3 00 4B 1F 59 42 C7 B1 C5 83 A2 35

---------------------------------------------------------------------------以下是解密部分,00 40的解密部分。。别理解错了

00 15 00 30 00 00 01 BE 1D AF 4F 00 10 0A 7B 3C 1F 90 D2 01 52 46 B5 A6 42 C7 E9 22 0D 02 EC F4 85 BC 00 10 AD 7D C0 21 74 66 7B 1D 30 6C 08 63 DC AC 9C 29 //整个解密出来的数据部分都是固定的。。。汗。不知道干嘛呢。
---------------------------------------------------------------------------
03 //包尾部了


因为偶只需要这点。所以也只分析了这点。。下面返回的数据是异常登录信息的。解不开。只有账号密码正确的情况下。。0826的返回包才能用0826的KEY解开。密码错误,需要验证码,冻结,异地登录等信息,都没办法用0826的key解开。。貌似是别的KEY了?

另外说下判断吧。。。
0826 返回包的长度=127 是账号异常 =175是密码错误 =740 是账号正常滴,密码也正常滴 =871就是异地登录了,,而下面这个返回包呢。就是871的长度

只要按照上面的解密步骤。。反过来进行加密。。那么最后把加密的数据发送出去。。就可以了。记得不是发送字符串啊。



[2013/1/13 22:49:38:269]
02 2F 35 08 26 2D F3 39 80 8C 2C 00 00 00 E1 82
9B 2F AA CC AF 23 D6 56 80 56 BF A9 5C BC 39 7B
22 86 C5 E8 7E 1E 17 09 83 E9 66 24 B8 38 37 F7
DB 71 A6 7D E2 4A 41 E8 7A 6E 63 4F 35 8F 2F 6B
EB 54 D4 8B 36 19 0F D5 BE 55 9A 8F E8 BE F3 D6
8A 32 70 E1 A8 48 2D F5 6C 5D 13 61 16 AE 70 36
81 0C 65 CF 2E 90 B9 07 5B DB 3D 0A 86 ED 72 1A
1D A1 F6 CD 3F 37 E8 5F A2 CD 19 72 32 EF E8 63
F8 4A 3A 2A 6D 7D 5F 90 3A D4 BA 8F E0 19 E4 81
5B 6F E3 F6 05 B5 22 95 B4 DB DA A8 0A D1 AE C6
E7 36 AB DA BB D9 D3 B1 55 84 BA 00 6E 24 AA FD
0E 87 24 4B F3 E4 69 FA C7 BF A0 E2 A6 75 39 26
CE BC 0D 50 3E 9C BC E3 F6 16 16 74 E4 95 6F E9
EF 55 9E FE 62 55 49 D9 B4 4B 4F 87 60 C7 1D 6C
F8 8D F1 BB 8B BF 79 EF 2C 08 DB 38 6F 21 6D D8
FE 8D 7E 9D 47 11 E2 5B 8B AB DB E1 00 FE 3C 8F
D3 04 F3 43 16 42 8F 25 E7 45 AF A9 5D 5F 76 7C
0B 8F 77 DB 42 D2 D0 F2 68 2F C1 0E 09 42 18 3A
54 A6 FC 6A 64 2F 71 91 9F E7 42 43 DB 81 32 BC
B3 2D 4B 0F D2 5F 4D AE 18 08 3E 6C BD C2 45 1F
11 C0 82 8D 3D 1F BE A0 27 F6 D3 52 CF 17 74 64
93 04 4E 6A E1 AE D7 34 76 A0 DE 0B 63 7F C0 C9
F0 A6 78 40 9A 3E 80 A7 6F E6 B0 BE 27 26 40 11
8C 06 FC 6A E7 A2 ED A6 C9 AD 99 DB 1F 3C D0 86
15 B8 05 83 A7 85 DE 8F 73 7B 00 49 DA EB 64 FB
07 55 64 E1 25 A9 C4 12 9C 11 27 B4 66 62 0D 4D
76 92 CD 57 65 8E 72 10 73 4E F9 43 50 00 F4 A1
BA 9D F7 7F E8 81 7B D5 AD ED CB D8 63 5C 03 AF
15 16 B3 A3 A4 23 AD FF 6B 56 6A 35 87 10 8B 94
17 25 0D BE 09 F3 42 07 96 1E 13 19 7B C7 C0 B5
88 C5 D8 77 33 E7 0B 47 D8 DD 7D C9 B4 74 21 D7
6E 65 BF 8E 2D 7A 70 C6 34 BC 11 06 30 72 82 D7
F4 54 7B 67 32 33 A1 06 16 91 17 18 72 95 08 BF
54 E0 F7 C7 EF B0 98 5D F0 A2 7C 85 60 81 06 EC
07 1C A9 78 9F 96 31 F6 97 B3 A6 C0 3D 3F 26 EE
CF A2 98 F3 D9 0F 64 C1 30 6D 1D 39 E6 FC 51 63
26 33 D1 BC 2B 95 CF E4 10 20 92 B6 94 E2 89 E8
31 0B B6 EF 6B 55 10 35 A1 80 0C CE B7 0B B8 66
96 DB 8E 71 ED C7 73 CF BA 51 26 71 17 47 5A 4A
92 07 BB E5 E2 12 69 33 10 E8 5B 3F 57 03 4D 1D
B0 7B 7B 61 02 56 A1 BF F0 A4 0F 0C ED 88 CE A4
F8 71 82 6F 48 3A 0F 72 48 17 75 DF 34 0F 79 98
12 FA F9 26 11 E9 B5 4D 42 0E 4C 91 68 16 BD 6F
7A 59 8C 07 1D 0F C3 A1 30 B4 62 14 DD 7F 1F 2A
9F 87 58 2E 74 47 D4 3D 59 95 43 71 33 2E 05 29
40 C3 06 3B 70 61 E0 FA 19 C2 99 5B 7F 9D E4 E4
3F 48 2E BC 48 6E CB 44 B5 59 73 B5 B4 70 1B 23
7A 34 C4 6B F3 B9 08 B3 FB B5 0F BE 17 B6 A3 6A
AA 76 6A 87 04 B9 45 91 55 FD 50 40 E1 89 F7 63
5B 57 2C 1C 37 B5 D0 4C BC 4D 1E 01 05 18 2A BB
CD 9F B2 50 3E 6F 5E AA 55 49 89 8E 17 07 99 D7
E5 6A 05 34 5E 79 EC 02 CA 66 A1 70 52 CF EA FB
A6 44 9C BA 9C D5 09 77 83 E5 02 F4 2E 59 6F 96
D2 15 35 04 BF 2E 27 5B 02 90 42 A3 45 D3 B3 99
84 15 A6 AA 46 8F 03

目录
相关文章
|
17天前
|
人工智能 数据可视化 数据挖掘
【python】Python航空公司客户价值数据分析(代码+论文)【独一无二】
【python】Python航空公司客户价值数据分析(代码+论文)【独一无二】
|
15天前
|
数据采集 数据可视化 数据挖掘
深入浅出:使用Python进行数据分析
在这篇文章中,我们将探索Python在数据分析中的应用,介绍几个关键的库,如Pandas、NumPy、Matplotlib,以及如何使用它们进行有效的数据处理和可视化。本文旨在为初学者提供一个清晰、简洁的指南,让读者能够快速掌握使用Python进行数据分析的基本技能,并通过一个实例加深理解。不同于其他文章的冗长解释和复杂示例,我们将以最直接、易懂的方式,让你迅速上手,即使是完全没有编程背景的读者也能轻松跟上。
|
6天前
|
机器学习/深度学习 数据挖掘 计算机视觉
python数据分析工具SciPy
【4月更文挑战第15天】SciPy是Python的开源库,用于数学、科学和工程计算,基于NumPy扩展了优化、线性代数、积分、插值、特殊函数、信号处理、图像处理和常微分方程求解等功能。它包含优化、线性代数、积分、信号和图像处理等多个模块。通过SciPy,可以方便地执行各种科学计算任务。例如,计算高斯分布的PDF,需要结合NumPy使用。要安装SciPy,可以使用`pip install scipy`命令。这个库极大地丰富了Python在科学计算领域的应用。
12 1
|
7天前
|
数据可视化 数据挖掘 Python
Python中数据分析工具Matplotlib
【4月更文挑战第14天】Matplotlib是Python的数据可视化库,能生成多种图表,如折线图、柱状图等。以下是一个绘制简单折线图的代码示例: ```python import matplotlib.pyplot as plt x = [1, 2, 3, 4, 5] y = [2, 4, 6, 8, 10] plt.figure() plt.plot(x, y) plt.title('简单折线图') plt.xlabel('X轴') plt.ylabel('Y轴') plt.show() ```
12 1
|
7天前
|
数据采集 SQL 数据可视化
Python数据分析工具Pandas
【4月更文挑战第14天】Pandas是Python的数据分析库,提供Series和DataFrame数据结构,用于高效处理标记数据。它支持从多种数据源加载数据,包括CSV、Excel和SQL。功能包括数据清洗(处理缺失值、异常值)、数据操作(切片、过滤、分组)、时间序列分析及与Matplotlib等库集成进行数据可视化。其高性能底层基于NumPy,适合大型数据集处理。通过加载数据、清洗、分析和可视化,Pandas简化了数据分析流程。广泛的学习资源使其成为数据分析初学者的理想选择。
13 1
|
10天前
|
Python 数据挖掘 存储
Python 数据分析(PYDA)第三版(七)(4)
Python 数据分析(PYDA)第三版(七)
34 1
|
Python Shell 存储
Python 数据分析(PYDA)第三版(七)(3)
Python 数据分析(PYDA)第三版(七)
46 1
Python 数据分析(PYDA)第三版(七)(3)
|
机器学习/深度学习 数据可视化 Python
Python 数据分析(PYDA)第三版(六)(2)
Python 数据分析(PYDA)第三版(六)
55 0
|
机器学习/深度学习 Python 数据挖掘
Python 数据分析(PYDA)第三版(六)(1)
Python 数据分析(PYDA)第三版(六)
56 0
|
10天前
|
Python 数据格式 XML
Python 数据分析(PYDA)第三版(三)(1)
Python 数据分析(PYDA)第三版(三)
68 0