「サイトをスクレイピングしRSSの出力を行うアプリケーション」の版間の差分
ナビゲーションに移動
検索に移動
Ippei Suzuki (トーク | 投稿記録) 編集の要約なし |
Ippei Suzuki (トーク | 投稿記録) 編集の要約なし |
||
| 22行目: | 22行目: | ||
=== RSS出力アプリケーション === | === RSS出力アプリケーション === | ||
全サイト共通 | |||
# データベースからデータを読み込む | # データベースからデータを読み込む | ||
# RSS形式で出力する | # RSS形式で出力する | ||
=== WordPress更新アプリケーション === | === WordPress更新アプリケーション === | ||
| 37行目: | 37行目: | ||
== 対象サイト == | == 対象サイト == | ||
2019/07/23 現在 | |||
# 水曜どうでしょう 本日の日記(https://www.htb.co.jp/suidou/) | # 水曜どうでしょう 本日の日記(https://www.htb.co.jp/suidou/) | ||
| 44行目: | 46行目: | ||
# ニコニコインフォ‐機能・お知らせの記事一覧(https://blog.nicovideo.jp/niconews/category/ge_function/) | # ニコニコインフォ‐機能・お知らせの記事一覧(https://blog.nicovideo.jp/niconews/category/ge_function/) | ||
# リビング京都 今日のもう一品(https://www.kyotoliving.co.jp/index.html) | # リビング京都 今日のもう一品(https://www.kyotoliving.co.jp/index.html) | ||
2019年7月23日 (火) 09:21時点における版
概要
通称「DIY RSS」。
更新情報を取得したいがRSSが配信されていないようなサイトをスクレイピングし、RSSとして配信する。アプリケーションは次の2つに分かれる。
- サイトをスクレイピングしDBにデータを蓄積するバッチ処理
- リクエストに従って対象サイトのRSSを出力する処理
また「水曜どうでしょうD陣日記アーカイブ」についてのみ、以下の機能が追加される。
- 取得したデータを元にWordPress記事を更新する
基本設計
バッチスクリプト
- 対象サイトをスクレイピングする
- 本文、執筆者、日付などを取得する
- データベースに保存する
RSS出力アプリケーション
全サイト共通
- データベースからデータを読み込む
- RSS形式で出力する
WordPress更新アプリケーション
- 対象サイトのデータをデータベースから読み込む
- 最新の記事がテーブル「dr_entry_posted」になければWordPress上の対象のブログに記事を作成する
バッチスクリプトは1時間に1回程度の実行。
対象サイト
2019/07/23 現在
- 水曜どうでしょう 本日の日記(https://www.htb.co.jp/suidou/)
- CUE DIARY / CREATIVE OFFICE CUE(cue_diary https://www.office-cue.com/diary/)
- ディルバート(https://www.itmedia.co.jp/keywords/dilbert.html)
- ニコニコインフォ‐メンテナンス・障害・復旧の記事一覧(https://blog.nicovideo.jp/niconews/ge_maintenance/)
- ニコニコインフォ‐機能・お知らせの記事一覧(https://blog.nicovideo.jp/niconews/category/ge_function/)
- リビング京都 今日のもう一品(https://www.kyotoliving.co.jp/index.html)
実装
スクレイピング
Goutteを利用してスクレイピング。サイトごとに処理を書く必要がある。
RSS出力
Laravelium/Feedを利用して出力。フォーマットが統一され、必要最低限の情報だけを出力することが出来る。