IQIYI弾幕クロール

前回今日見た後愛のアパート5、約iQIYI関連弾幕をクロールを言うために、特定の実装に簡単です、これはデモであることを主な理由です

実現

まだ開いてまずiQIYIは、その後、90年代広告を待って、愛のアパート5最初のエピソードを選択してください。(この時間は、それが置かれ、書き込みは何にpycharm必要なリクエストを開くことができます)

ここに画像を挿入説明
その後、見つけるために、ネットワークにアクセスしてくださいそこには明確なdanmuの言葉はなかったので、要素に行けば、ちょうど実際に動的にロードされていることを、弾幕を注文発見
ここに画像を挿入説明
ネットワーク検索に直接アクセスし、探して気にしない、私はファイルされるべきだと思うことdanmuそれがどうなるか見るために検索し、彼女は奇妙なURLを持っている
ここに画像を挿入説明
ここに画像を挿入説明
し、私は、プレビューURLがゴミの山で開かれ、.Zは、開いているアーカイブファイルをダウンロードしません。danmuあまりにも明白:しかし、私はしっかりと、これは、すべての後に、ビジネス弾幕であると信じています。そして、私が欲しいものを得るために、オープンにzlibを使用します。
ここに画像を挿入説明
どこにコンテンツがコンテンツ弾幕の友人です。
URL構造を見て、実際には、適切なTVIDを取得するだけの必要性を簡素化することができます

#https://cmts.iqiyi.com/bullet/tvid倒数4位的前两位/tvid最后两位/tvid_300_x.z
#x的计算方式为片子总时长除以300秒向上取整,即按每5分钟一个包。

Xは、トラバース限り堰セットを得ることができ、その後、全てTVIDを通して、完全弾幕を得ることができます。

デモコード

import zlib
import requests

url='https://cmts.iqiyi.com/bullet/40/00/11298454000_300_1.z'
res=requests.get(url).content
zarray = bytearray(res)
xml=zlib.decompress(zarray, 15+32).decode('utf-8')
with open('./iqiyi.xml','w',encoding='utf-8') as f:
    f.write(xml)
f.close()

これは当然のXML形式で記述された再エンコードバイナリ、に.Zファイルをもたらし、あなたが書き込みXMLすることはできません、直接のn-などで抽出された情報に関連するXML。

公開された64元の記事 ウォン称賛19 ビュー10000 +

おすすめ

転載: blog.csdn.net/shelgi/article/details/104062585