Pythonモジュール「feedparser」でニコニコ生放送のRSSから番組一覧情報を取得するソースコード付きでまとめました。
【最新版】ニコ生のRSSから番組一覧情報を取得
Pythonモジュール「feedparser」でニコ生のRSSから番組一覧情報(最新)を取得します。
ニコニコ生放送では、RSS(http://live.nicovideo.jp/recent/rss?p=ページ数)から最新の番組情報を取得できます。
ページ数を進めるほど、古い番組情報を取得できます。
取得先RSS:http://live.nicovideo.jp/recent/rss
ソースコード①
RSSの1ページ目のみを取り出す最低限のコードです。
# -*- coding: utf-8 -*- import feedparser rss_url = "http://live.nicovideo.jp/recent/rss" # urlからRSSを取得 feed = feedparser.parse(rss_url) # 記事の情報を表示 for entry in feed.entries: print('-----') print("放送タイトル:", entry.title) print("コミュID:", entry.nicolive_community_id) print("配信者:", entry.nicolive_owner_name) print("放送ID:", entry.id) print("放送URL:", entry.link) print("放送種類:", entry.nicolive_type) print("サムネURL:", entry.media_thumbnail[0]['url']) print("視聴者数:", entry.nicolive_view) print("メンバー限定:", entry.nicolive_member_only) print("コミュ名", entry.nicolive_community_name) print("説明:", entry.summary_detail['value']) print("動画タグ:", entry.tags[0]['term']) print("コメント数:", entry.nicolive_num_res) print("開始時間:", entry.published) print('-----')
ソースコード②
RSSの全てのページから番組情報を取り出すサンプルコードです。
# -*- coding: utf-8 -*- import feedparser # 放送中の番組情報を取得 def get_nicolive_list(rss_url): # urlからRSSを取得 feed = feedparser.parse(rss_url) # 記事の情報を表示 for entry in feed.entries: print('-----') print("放送タイトル:", entry.title) print("コミュID:", entry.nicolive_community_id) print("配信者:", entry.nicolive_owner_name) print("放送ID:", entry.id) print("放送URL:", entry.link) print("放送種類:", entry.nicolive_type) print("サムネURL:", entry.media_thumbnail[0]['url']) print("視聴者数:", entry.nicolive_view) print("メンバー限定:", entry.nicolive_member_only) print("コミュ名", entry.nicolive_community_name) print("説明:", entry.summary_detail['value']) print("カテゴリ:", entry.tags[0]['term']) print("コメント数:", entry.nicolive_num_res) print("開始時間:", entry.published) print('-----') # 放送中の番組数を取得 def get_nicolive_total(): # urlからRSSを取得 feed = feedparser.parse("http://live.nicovideo.jp/recent/rss") return int(feed.feed.nicolive_total_count) # 最大ページ数を計算 max_page = int(get_nicolive_total() / 30) # RSS全ページから番組情報を取得 for cnt in range(max_page): rss_url = "http://live.nicovideo.jp/recent/rss?p=" + str(cnt) get_nicolive_list(rss_url)
参考:【Python/feedparser】ニコニコ生放送の番組数をカウント
【注目版】ニコ生のRSSから番組一覧情報を取得
Pythonモジュール「feedparser」でニコ生のRSSから番組一覧情報(今後の注目放送版)を取得します。
取得先RSS:http://live.nicovideo.jp/rss
ソースコード
# -*- coding: utf-8 -*- import feedparser rss_url = "http://live.nicovideo.jp/rss" # urlからRSSを取得 feed = feedparser.parse(rss_url) # 記事の情報を表示 for entry in feed.entries: print('-----') print("放送タイトル:", entry.title) print("放送ID:", entry.id) print("放送URL:", entry.link) print("放送種類:", entry.nicolive_type) print("サムネURL:", entry.media_thumbnail[0]['url']) print("開場時間:", entry.nicolive_open_time) print("開始時間:", entry.nicolive_open_time) print('-----')
– | 関連記事 |
---|---|
1 | ■【Python/feedparser】ニコニコ生放送のRSSから番組一覧情報を取得 |
2 | ■【Python/BeautifulSoup4】Webスクレイピング入門 |
3 | ■Python入門 基本文法 |
コメント