diff --git a/抖音js逆向学习/抖音直播间弹幕/extractors/解析直播间广播数据.py b/抖音js逆向学习/抖音直播间弹幕/extractors/解析直播间广播数据.py index a9a9adc..492dca2 100644 --- a/抖音js逆向学习/抖音直播间弹幕/extractors/解析直播间广播数据.py +++ b/抖音js逆向学习/抖音直播间弹幕/extractors/解析直播间广播数据.py @@ -18,10 +18,10 @@ def 解析直播间广播数据(content): response = Response() response.ParseFromString(origin_bytes) + msg_list = [] for item in response.messagesList: if item.method != "WebcastChatMessage": continue - # 生成ChatMessage数据对象 message = ChatMessage() message.ParseFromString(item.payload) @@ -30,9 +30,11 @@ def 解析直播间广播数据(content): 'user_nickName': message.user.nickName, 'content': message.content } - print(webcast_chat_message) + msg_list.append(webcast_chat_message) + return msg_list if __name__ == '__main__': - content = '082b10c1a1bd82d7b3cd9a6118b84520082a150a0d636f6d70726573735f747970651204677a69702aca010a0f696d2d696e7465726e616c5f65787412b601696e7465726e616c5f7372633a707573687365727665727c7773735f6d73675f747970653a727c777264735f6b76733a496e70757450616e656c436f6d706f6e656e7453796e63446174612d313638373939353839363435353036343837325f57656263617374526f6f6d52616e6b4d6573736167652d313638383033393333303238353338343632365f57656263617374526f6f6d53746174734d6573736167652d313638383033393439383233383538363231332a400a09696d2d637572736f721233742d313638383033393530333237315f722d373235303037343435393734323132333430385f642d315f752d315f7264632d312a170a06696d2d6e6f77120d313638383033393530333237312a190a0e696d2d6c6976655f637572736f721207642d315f752d31320270623a036d7367429e2a1f8b08000000000000ffec5d09701bd779f60348117aa264cc5a5421a693b250a589d850da03d772468d0110e0211ee04d314e364b60098004b0d0eee2209d746235b1ad7854d31a57b265f962145b971d59922d9a8e8fa8b19df1217beab4eeb8699dc63c24c5534fdca44d3daddd01408204095004b920a1e8c99eb145eebeddf7defffefffbbff7bd7fe11907dcd8c9f53859516ae0fc3d9cd0c08922ebe6b0030e385192fe77eaf3878e3ef593fdbfbce4d2bc70e88ecf4f8d3c73c98503cbf11258e2f3863946e0793fc305244e60249e15256cf3ed786548e484ef944d3cfca3b1d13b6f272a4549f006dcdf29dd00d76ee931f5c6ff940d29b51f6d54adc38a61d11693d566b4dbcb869427c13b1be15b1b55778dad295d3336f262797979dd61056cf44852b072e7ce20551149bce30e171f1af006825ee70e27efdfe9f5bb774efd66a7e8677d3ea6aabdcb1c662556d8110cb8ff5a0afac2157c4fdf0eaf9f757333ed19e469af69ba3d8290a541ec4b0b5c5b5eb4454fea70ca781244615b3623139b16c62db02e8ef17161cec784f58c2ecde335eab2321c584a3505da4d970ffcf0f2c9fd934fed9f1c7d523739fae4f83df74c9e7aec24d80f606b36a3d8cb0644a72fd433fd64034310691e8d175970b876f2feef5df9eefef18786b1a22df6f81fcd3aad26f9d3c9b3fbc7461e1e7f6838f13267c10655afba48034860ac541238390a7e0af08223e0b65c0ecf30f8066ccfa67936c2f93926c80e4c3d838c3244faf68bcb8a717011bc0ce191c25983a15ea701da2f0ae0930a95021b56e464fc671a5d4c9716db685b56eb6391ad6265d7ba01beae5015601715b073b99d62a2fe60ba8e752e770a3235dcb5ec11cbd032f6178bb9a9650d2cb8e9a6bfc2baa7fe8bcd5821fe9bbbde3d7df8c02305d8a3852a80210b95d742e536a49c99fe7560a1fb14379d512aaf2a572d4c5e55e65198bcaa7c18e4cc1c702afb179a3b85430560b8600af5bd5150ddd0aa8bd4f73518c4deee8eb6419bdb5dddcc45c3545b75348a775679061b9c2d0cd567a9a7eb5a7ba5c196bdba267d0de3c6773b0c5c53c063eda8ee0cf8cdfdcd35c001ba867eaeb81b285f010f62184297085d227499195d22cc245344422868b128284b74893013b2d03cb050842e11ba6cd6fc6aaf030c3e5fac52616be3d08932ea68ed4f00dc1276ba9844504e7634419372bdbd9c5362025c04fb52922b1dffc163e3dfffd1d8e89d930f9d9f38f8d495c3e74b8be17437cb8694da3ed53a4c712b380958c8cc06b039e853f99b0af8f56ccc2ad6d5f49dec71a75bc45fcfc64cb26dfcb6ac3c4496ad635f59ec8de5f1c9236c16d31d85968f15f09bd90ee802b693aedbdfcc764cb36c9fc97a58b37b00f69759dcab5197697060d994de27d415902449f615ac5fbf7dfb607c555246ca68de0736c3f5537324f221c1c961aae927ec031a08259e893b67af0b83948ed6194c38ae27f701355c3b759bd78529499c1802af8c281e00a715a320d9c245f0850216f6b02e3787fd5ea1baf90df08902a2795fc979bf089e0150e567bd81769113b06340b5ee247804c08780ea77a7ceee5b1f779997ef79fe538531e129cd16b3d96c6ee66acc5d74072932fe4073438d95b787edac89edb55530cdd5565e688ad858c16cabf6b7b813cef6f23dcfcbe76c0f827736c14d536390b29be60d62db93f1e1ca778f5c7ef9aeb2db89caa0c0f526f7d6c88c7b6b6f96ccdf5bbb5002cf9764643f64622be46653569afdb09a6cb8c58ad88f1b93fd401911da5bcb839d0bc47e20f6237fd6fa42ec0797ddf0714edecff8e30223260e969970ba77d26c28db8e575a54da35d3ec0262596e609645fb15d5066cc36c306b0217c12d70ad7f80e9e57d3e3e82ad19fffeb98973c7b50a1538024615f09c6206412c66d26206e3637b381f2370ee908f1518a7874d9b1165054c16df6c47566b7bd1ed62da6bdf525eb4c562ada26d7899e356c571a0d424357ff0a34c92c1571cf0b79924832387de3ff8ea3cc9e039392483ff914632f8c146f8fed4a6ee47773c5b5e5e5ea640dbbaf3131b3b1efbe72418cc7e61ccf5a48429b32bfd9206d3fec96c574a9832a4363246c6a5a5366ad5d340fd671a402a28a252491875a3e06700c78eccce3e723044c380c90ebda5cb6ef40c41cb91dfc8094f7202a4f226bf41381be537d7d3b8a3fc468efc6615a3656ae6b1cad13235f390794dca977924006032f368ec33d6f4b3c13e5f8b47176e76501d4d5172b0dd6f21770ff8eca12ed7ee3a2640b4593a0dc128eb6c3350551e8fa37ab08d6df2199afb066dfc9e14f5e06515868026029a08682e454688c2b85c611c41762423cc6f0b454013014d0434b3029a9a070407187c7d35848489aee4a04f2942c25c68fd72aa52cc1f21a1cd62b3d8ed73858439127ce55ab0761d09cae60909edf6d854a451042eac2ddc9ca22d5c471b7093c94011b8d1b02425219af8dc2b095f9aad247c26ae243c05e071a03a76e9ddcfc615a5c51fddf1eceeb28b672f8eeed8b1638ea030e8696d6cae35db1d52f3a09eb691d6fa70ed606d4707dd4cf9f50e8f95097aab82549823f4b6e1829486e473bd07c107399115fe531a59e1c512f87209a245ae458b5808abd54c215a04d12228e944b448ded2222899473bc479b0439c465fb8985158b2be10d12f3734fd92adc2f02505bca098d1ec2d4d0a186125a767412de0d2948b19dbed5ca6c63053c3d89645dc535eb4c5865b4d16ebb4ca302913849f665219bee380573317263c327c669ecaf0b41c2ac3c9342ac3f736c277a74bc73c3f14cb7200ca72e66739368bdd62b7a71c9f5aaa3fd52fa4d72e4cd56bebf3f5f8945af52a507f2d96e318a84a25411be307a80a530e50c93f40c3d9a65069521c3d238bc010c147041ff34a60882c1459681e58689af2312b1b28f3f86053dea61d09e4974c3b1ce1fa8ea60e93bbb123c8d092c912c4c97a296068f775791b89664f7fa89d08d40f841c5dc4de8696bd7b76b70c8ad53a73276d76fb750e9da5dd39b738214298086122848910268adf791fbf91b210290bf367ad23848910665a84a9f938e800839f4ceb0aab4c368bd5b642050ae35dc9419f90ae501e5da1c56ab1da7054a070f57585f1135359eb0abf9ca22b54eb083d41190d346ea268c264c45199c2bc9cfd8be0df678b0b7f1117175e02f04da07ae9d4bbf7feefef7e5c548a8d3d3f34b1efb1897d8f7df2e223897f3f55d4cf161932037a2268937883a937d2101da8e8dfe335454d2dcdf5fa16830f9706da288f8e8cb677186baac27bf46d2ede6d8b46f7920375a46eb0b7734ff770419a67c8e7a20f82f772a23f7c278dfef085123852b2006f820a1bc6bdbdd16cc0f514e24d106f827229c49b20dee48f78dcd15a9783375929e921e2676e607e0695365c72bb8b2c6d98c0bd33a50da75483f0ad22884d090bad1e569a961c9e2a8264ba5fa8478f3ffdd6e4dd73f4865d0f7c0ae28561fea73091818c3ff4787979799d43ee744116dc4e2de42694a96e824aba89b3a058d5a02ed40012e095008fc364a52c3039f3fbe4be0238842aed1a58a0ba09bb4946a27c69231c8b35cd59250501a78717e20c0423b16e264ca6737a5b2c1bb4c5535e2dfe9c840b4b98e88c76bab5b7a715f70a5dd6fa1ec92858edb8bb86a09a8ce66adba08be0da5dad5551bdc71971720384b17390dfed745a19636b4da82a5265dc6b6fa82dbd797ce86fc646be3bf1e091b1911f8c8dde59d7036fcbae3f330b38c04532adf799b54cde0aa26fffeaf7c7d668928b123e9c4943fc5913fc2473a5d273975e9ba7217e460e0df1c76934c4ffbc11fee394c263fcd889f92725115391f80483d54cc97552d2b0d0990cf59c33190679b90a3c1b680417fe0843ab5aad01a48230542a4c54fc9ca45a9e739299076855ce494279c98a7453b0ec04266da3cb4e60d2b5ba600283cb4a56e0b94a9a3336bceca43953cb0b26cdf872c90a64a1cbb550b90d2967a67f1d58a89ce5a396182b65a111e48a95b2d00899a62d238db0c00ba5a71112f06f0683f3ad525d6f537d7f7fbfc8ec36386b1aed44a7a915a7431d837d96be9e7eab2da4338bbca7abdb56d7de6cf7ba5b44aabdc156e5b3fa3d7b1c75ed73eb9422988960268299d78499083cc9149a101c5a2c1c423013c1ccfc5ecb0866229899016626d4c46f4fab898d56a3d54cad8c9a38d1951cf409a98965aa528a5bac162b5213afb09e14ce53139b683365b42eb74aa99ea07112c76902d7a51712ff6cb68af5425cc5fa0c804f03d5d02393a77f0a4a6f1e3f7662fcd88989a3fbc78f9dbcf2c0b939553205aaaf65d0dd2b490dd5fadec656af8ee9d8c3990d5177b3d3491bfd4433c57bbd5d3e5390af1d2e98db967cab1f09a257dd800f820737c9b0e1f68b34d2e0574ae08b250b3021e848f5b444a24a8f98901b9909417926da70cb833c1331218809c96f0b5de90f9f23c6e586665c90e2377bc56fa2d27e99e356852629f083f767d207feb629738dd17b0f1d187f63556a8c4edef71cdab8bdc6072665d0eb2e50b2b954a34ad5ebe6f17714de06eadb62d90a4d562a495c1f9768ab6491682ff41985bc39c9884affa3938c797592119dbf43169a07162ae3c196a5054af46983ec4f1826905f32836870d2517ba3a92b6a68ac667c644597d053dd49b65491d46e4a089b4d3c2976b5189a07a5417d853d6c8c74988496bd5d94680e54f19de63dc6c85c69204298086122848910268adf791fbf11c244169adf168a1026429891842af0bd648d516b95d56e5e195560a22b39e8538a2a3017c2bd9c4a0ef3471598e0e2912a70854555f36b8c5aac55b42dfb1aa37355817aa3414f535446552052d3ad7a79d137660b335f8c0b332f00781ea8ce8c0c7ff80e28c526ef7b6ef2bee7c68f1d193ff4f0c499f3f3bf60de284a0315fdbd416bb0af2f505f231a5bcc6c5d37dbcf045d016bafcdb497a9615a2cbcb5a3c63d5c90a639f9dcf04170bf1cdac06b940d455448662a64fab3e5880a415408a24250a2997f54081a7799c61d914a8b5deb7f24654311e572bd522ef36481f2eaf772a436cc1b596052d70747376790051ede0cff5595411678fcd0a32fbc354f16f8a84a864ce583a2f999ca6b45f0ef8b1299cae51f5f282f2f4779cafc3cc54c9929ab35254f59ec9a98a7975ec82d8254b748cc2a93ba41d5a0fef358664051950a63e27b0220253190ff8d56bb50eaca8ef1ca164a4d2cb619a74d3677f43306736783876e331bf6463b429d75351d4dbd7db6c000d7596114bbf8e6aa9eba6677b8be96b60fb4ebdbf658bbbddd5ebfa06369ba5b9cabc4408b1a2d6ab4a8aff345adf960af031c04ffa6cac5e78eb24703e8447342c065b759ec26e43890e3c85bc791ed971f0acac8c4270c92d907fc6233d44e25282d6ca0dfe715a51a3e24d80292c0069cdc742a736933342fe642f5c8f1375f7b3635af297be2d79f5d18227080ddbd1996420d5c07d78e9fb977e2f073134f1c2d9df95ff8a7b034f6bbb1d1d18933f74f3c7154ad2c9df90bb6c09dd8827796de550cbf570c3570d3951f3e7ae58e03e3c74e8c8ddc33f1c4d1c9d3a789f1a103ea5bb4470b6ed78aac8f630436d0cf4803414e5b39eb070443e004a9fdeaec6bd81e26c0fa63d7a56f3576b5d3c3f9d9584ba28f77b2beca9dd366c4f80602d1b0978b7c2d24f876c5ec4fdc4a99b792f6ada4ddd73b6d861589bd54a72b5021f1e28e9e01897373ce7e3e66945b493bdfd3b795b4c77e5ae10e09aea9abb792f6a9dbb792762e7165ec695b497b2f177f2e13fba99f139c1c13cf358302ef0a39a578bfb692763feb0d6c25ed12e70ffa5889dbd1276ef3f1ac8b915881df856f8b0dceae201f0c05b77938afdb2331c1585301691781e3db225e97e449f9091fe4020c1bf0fa5989db456c133d7c847179fdb196f86062f9ee22b6b90536ec950676f5f092c4fbb7c5c39fd7b5cb48ea6893c940eb708a26708a32e8e96d6c488aad40af6b1749997404ad23f41449d0b89ed8969cbd5dc4366fc0151225612076616cf6e28f9b7d41fc4d3841e0054694622f876bbfaaf58a0c1f6092d3acadd412daef9423f340e691d93cc827956806af8f19449100190a8a04c83c5024b8c167503372fcad449e021f2fcfb07df3f976f8ca860cdb37c3875efbafb7e76ddfecdb20c3f6cd8bebe7133627d6c327d6c7099b8216c4f3e6bc005dba8233c96237704eb11b7c166183a9ee2a523fa0d00052499af04a258d27eabe4179eabe657eaf94ba6f4b656d70865888b7192f84bf4e11cfacd128b4af17c2df285405d884027e6b79fbf9be988771f1910063c82476f9d6f236e917f104769962906b3f02abc8eaee79029b37152a05f69a62469fbfecb15850fdbfecb94cd7fa37e41be57423bc7dd177e6ba4ef9121d490a2bb9a8d5bc0c56321e51929c6453971432f6895c6313bec7e8f4b6fb5c518fa1cb5b4d0d74d6b7740f462aa868241cc09b1a1bdb7037df6d8e782902b7363655f41b0c446d055e3b778712c52d14b7f2336e214f2aa3274528602551008a5bb2c7ada94d7894c2ade28ebbb9ca6ac7512844a1108542140a6508852b758e62151d562e42e1945044932439e1e774068ef45f68f8e12d192bdf7e3871761e47faf82d3204d85f62f303eccf31f82a9610b58d8d1c4221366d884d7cd82725c42e557045a60d34d316ab49b5585237eb30eedf8199d3f08b9917614a6f34739e5d0c05936b94488b19e3e780265e787cfcee3b538edd146b35c99fa6f964c71ef52df14f76d0950a131d8ffb9a23d90ae2b21c2c39e23e896778c254dcffc19a19cd1df67f852a80fda170d6f0a88b3540fb6121fcef58e0fa54019d72ce4ea6c8e2cca6cf4b7d882babf5b5c4a76078b60dcc6375df8f01b07f50e47c5dcc3c408e515f1092c832e2e946fbabd9dc8ccd58393efade1f0efcad324d9ebcd22ef0aa324f5de055e561b022ab1f3759be9ce1e5d6a43f04b9524addabca132b340454f6f393fe646802ee24f19fa38ad9cd8bb59ddde180cbe1e9f6783ba33e2355e1ea96062837535357dd19d6edadb538a83e31d06add5ddb1b6d7636092eb75910f9dd8668c7bc72af085621588560d5d261150aee390aee08b0ae166045b00ac12a04abb28355f11aa7070122c05613a9d92c5526ab0d213584d410019647780261644480e5830b44480d21b58ec8f40668720713ab932a0883c98453b41ea7709a60840a23a9c771a34ea7a78d3a9220291d6e625c150413aa20985ecfd4af298ad6933861d0517a92620497b38228fbcf2b9f5d1822ca9f03de18f60bb03e46149c95c190e8113921cc09df8e8822e317ddf1d32b95c2b723824b64fac362656d2018921c6c80f359797f900f7001a97520e0ac622536f676469ad69b68834eafc70d3a939164a68febf3bcbf850df44fedcb4e7784a270d2a4a74c3a0369987d69abc44ae29c6b75b489a44c7a938124a85b6fae01ff0f0000ffff010000ffff59a7abbf081a0100' - 解析直播间广播数据(content) + content = '082110acfbddb0e3b3cdd53018b84520082a150a0d636f6d70726573735f747970651204677a69702aca010a0f696d2d696e7465726e616c5f65787412b601696e7465726e616c5f7372633a707573687365727665727c7773735f6d73675f747970653a727c777264735f6b76733a496e70757450616e656c436f6d706f6e656e7453796e63446174612d313638373939353839363435353036343837325f57656263617374526f6f6d52616e6b4d6573736167652d313638383038393939323339303131313636325f57656263617374526f6f6d53746174734d6573736167652d313638383039303133303335333137393231322a400a09696d2d637572736f721233742d313638383039303133353230395f722d373235303239313932323532353234373537355f642d315f752d315f7264632d332a170a06696d2d6e6f77120d313638383039303133353230392a190a0e696d2d6c6976655f637572736f721207642d315f752d31320270623a036d736742c20d1f8b08000000000000ffec585b681cd719f6d915f27aecd8cbd6495515ca22f7c930d239731f41a97757176b2d59d2eab2d29272989d39bb1aedceec6466b417d9292105cbae6d24dc46348254c1511b47ad5be54614b5258e496929b86ea94b2114fa6245a2cd833094e6a1942259daa8ca865ab51253d8857958ceccff9ff39ffffbbe9f8f9af551813849aa8ae3464614b78b388e9226817feda7984a0bfe6bd79ef9db47372edfd6ea16a79fb973ee2fdfbead4130f4bd7be006783e1058acf54dde5efbf177fe7ecbe3ffe7cc9d5f3e561f585e985cfdd6f4f2dc2bcb73afacbef1aa2008411035a9ec88eb5a4e735393c5366ab9b1926e5abadaa8e68c26a5400cd284202c2208efffa395bce22a76939173145da5b324ada825cc22519020848851382125701ca7286ce3a845d25f4fd939e36b2c144441442ccbcd83716a603de17a3e812edc3fd68ebcba916eda5c691a73888dd3b6a2119c257992c5791e23a9d132d3df74ad6c9ece25471b754349933a7f300841f8cb7581862fae5e7e6975fec2caf50b2b4b2f236965e9e5e58b17577ef4e26be090ef6dafff278001b019c025f01e808119f08dcf74475701a6e2bb89bf51676c29a5cd244c11231e23b9528643c14310dc0414e56ba8a56a7cfb02fb9ef5ec7bcd73b0a82b394b31d3fdfdd17b9eceae3eaed0391a0a8742a190e9b60e32ae1be9e13a398c84c1829238857b623cc2793de588f6487ba24f1a55b03cded1d2d7798a1fa5fb625d7454d21324331a17a20b5eef5fbd8ff00ea76ac0d59a0aadfc9b9af6fbc73c5d6c6db389ce0d586e319eeb691f1b8b31d1feee74bec8c7c78b193e34dc59b287068668cb4a652d5c6885ad3da4433532e32ddd3dc3e15e581f5c9b9df8e9daecc49b6bb313d7d666275edf7cde599b9d585a9b9d588c26a927a9dead0ab00f5881ac9224596c9202564714b7c2e98fef3fd6126989b48582cc09509cfef0a3b9da6b80a92be39cba132c1341a79e215b0cf17a907adf5f69c5ff8be93f7db87073074584e7fcd4e3762e67e0ac9e2158cd1946cec42e29ba812f9c81cdeb5b7d3a7806353baead9be9a7eb0f53078ea5367fc1296fc3ad23be83f3e05747a8f78ef8962f4e4d5ef2faafbff5fb576beb0fafcd5e3abffe2c2f4c2e2f5e0a7aa2ef7aa9b3657641e8c1e9c5cd39b46ad23a0d25c4aa1022ac2685648ac829c2a7448ec8aa2ca420cb8850501489839250916da833ff0bb7ed7d72e1734f1e68dfa3e8f3e096e763b43f68af7f02edb042bfef0189540c3bb81516a1bd8c1b68f8ef9f94098cda4160709b081df65df0fa4f331e516af6b232bb04eed5406a062c54ebbccb3a5f058b9e87d756881157e978f1dd5cc66e020fedaa6ebb881cf8ea837cf46943031592049e636449e6ef79c4ed33435f2c5e1c4ef487f962678c1f14636385e16e795c30c55087d191e8d3fb99b0e6687de38399c2c67850658c3d658c8d916787b896c79d2e18a5f562b77e3aac8ef0121e21567e0c178df048cf90798a6d094548588e981d9a60c943b23d4e8fc8510d732da7da0ac9a75a7ab9eed686277c2011b8bbb87477f1671f5cb9bef2ecdbab6f7effeed2b91e701e801b60d5e73f50f7ced9e355b1af8a7d15ba55b1af8a7d55ecab62ffff2af6618f1f246b825f39e1a92b7b03d41f8e524737cd832e622489bd652c2c1ca57eb8bff29affc5e9e76fbef5096b61b5967a3cabe709def01788e9121bbb39c571035f2a5b0b1fbcf083bb4be776180c49e96383e1a55adfc1c0216aff3129d22ab6b505a7bcf360b296ba54eb7beeb733cfbdeff1ffe3cacfdff0d6d72e4fbcb03c37193d43951e427b95bc4b4388789ce2614a853ca308aa86780e2639455344c82591203229a5b2f2ce8322d5ffb0dd5f09dd9b9d525f57d3f0c4f64ee1b649cb63beac5f653cb2dcec45505a02ef025833039efc2c377475b76669256eaa1cff5388ea808c7896634576274f192ac96723a1ce0178723892cb98ce58d1d43a75a6108b240b6d7c47a94be0ed885014f9e10d9e7a6417b581e8cd662d23b95b6b4f6434773c6c728948c780d1d6adb946bce4b6f49afd439adcea447ba3566910954c9c6c278958823c35a0b5c24c2c6e99853811ba4e821e3034f56bcf79e05d1fd203557454d15145c7163aeafe78a0075c015539aa02ae0ab8cf037033a026c89cf0d495c7c200ebd24890242843c4f28865b04d8b0c0f1919c90cc3333cc389bcc8638d46788c46d8d6549a0dfef9bb977f37858e9f03fa3a564d258b1d5b6db6c69c1187d879629f2d380e369c34764b1669b6cf166ccdc199bcd3bc39a3c6723923a69899cd29f5fe0e24599619568608214160f0b657fb5cc575fee3ddf5dd429667912833883971e424f837000000ffff010000ffffcf9b148a981f0000' + res = 解析直播间广播数据(content) + print(res) diff --git a/抖音js逆向学习/抖音直播间弹幕/v6.py b/抖音js逆向学习/抖音直播间弹幕/v6.py index bda0395..c1b8e1c 100644 --- a/抖音js逆向学习/抖音直播间弹幕/v6.py +++ b/抖音js逆向学习/抖音直播间弹幕/v6.py @@ -1,6 +1,7 @@ from 抖音直播间弹幕.extractors.douyin_pb2 import PushFrame, Response, ChatMessage from urllib.parse import unquote_plus from websocket import WebSocketApp +import binascii import requests import json import re @@ -28,7 +29,7 @@ def fetch_live_room_info(url): wss_url = f"wss://webcast3-ws-web-lq.douyin.com/webcast/im/push/v2/?app_name=douyin_web&version_code=180800&" \ f"webcast_sdk_version=1.3.0&update_version_code=1.3.0&compress=gzip&" \ - f"internal_ext=internal_src:dim|wss_push_room_id:7249886940391033659|wss_push_did:7241108041709241917|" \ + f"internal_ext=internal_src:dim|wss_push_room_id:{room_id}|wss_push_did:7241108041709241917|" \ f"dim_log_id:2023062917400283AC7BE0CC82F20C1E37|fetch_time:1688031602253|seq:1|wss_info:" \ f"0-1688031602253-0-0|wrds_kvs:InputPanelComponentSyncData-1687995896455064872_WebcastRoomStatsMessage" \ f"-1688031596235825690_WebcastRoomRankMessage-1688031596293918081&cursor=u-1_h-1_t-1688031602253_r" \ @@ -39,7 +40,7 @@ def fetch_live_room_info(url): f"browser_version=5.0%20(X11;%20Linux%20x86_64)%20AppleWebKit" \ f"/537.36%20(KHTML,%20like%20Gecko)%20Chrome/114.0.0.0%20Safari/537.36&" \ f"browser_online=true&tz_name=Asia/Shanghai&identity=audience&" \ - f"room_id=7249886940391033659&heartbeatDuration=0&signature=RBC/E3IffRZOBAFJ" + f"room_id={room_id}&heartbeatDuration=0&signature=R/4N4c1fR5u9h0PT" ttwid = res.cookies.get_dict()['ttwid'] return room_id, room_title, room_user_count, wss_url, ttwid @@ -49,6 +50,8 @@ def on_open(ws, content): def on_message(ws, content): + # s = binascii.b2a_hex(content) + # print(s) frame = PushFrame() frame.ParseFromString(content) @@ -86,7 +89,7 @@ def on_close(ws, content): def run(): - web_url = "https://live.douyin.com/80017709309" + web_url = "https://live.douyin.com/22830168665" room_id, room_title, room_user_count, wss_url, ttwid = fetch_live_room_info(web_url) ws = WebSocketApp( url=wss_url,