makeとchatgptを使って、RSSで集めたニュースを構造化してスプレッドシートに蓄積する方法
完成系
サンプルとして、全国のスタンプラリーの開催情報をスプレッドシートにまとめるワークフローを作成しました。
RSSで収集したニュースがスプレッドシートにイベント名や開催日時等の項目ごとに整理され蓄積されていきます。
作成したワークフロー
今回はmakeを利用してワークフローを作成しました。
RSSで取得したURLの成形
RSSで取得したURLをデータを読み込ませるためにURLの成形を行います。
https://www.google.com/url?rct=j&sa=t&url=https://minkabu.jp/news/3772084&ct=ga&cd=CAIyHDMzNThhM2VmYjMxOGQwZjM6Y28uanA6amE6SlA&usg=AOvVaw0-yKutUoLXqrNms0TSuPNj
上記のURLを
https://minkabu.jp/news/3772084
に成形するようなイメージです。
上記URLをHTTPモジュールに読み込ませることでhtmlデータが取得できます。(スクレイピングはwebサイトの規約やルールに従って実行してください。)
RSSモジュール:RSSの取得
Tools13:RSSのURL &ct--の1文字列目の取得
Tools14:文頭及び%ct--以降の文字列の切り抜き
テキスト及び本文の抽出
Textparserを使用してhtmlタグの削除を行い、文章を整えます。tool8を用いてテキストの中でタイトルを探し出し、tool10でchatgptに読み込ませるためのタイトル以降3000文字を抽出します。
chatgptに内容を構造化してもらう
chatgptに以下のプロンプトを与え、指定したフォーマットに出力してもらいます。
Google Sheets④にてスプレッドシートに出力した情報を転記し、Google Sheets⑤にてシート内で情報を整理します。
情報が取れなかった項目は削除し別シートにリストする
本文中に目的の文章がなかったり、URLが正しくなかった場合にchatgptがうまく出力することができなかったデータは項目を削除し、出力ミスのシートにリスト化します。
これによりノイズとなるデータがリストに加わることを防ぐことができます。
上記で利用したmakeのjsonファイルを配布しています。(ご自身のmake環境で配布したjsonデータを読み込ませることで同様のワークフローを利用できます。)
必要な方は以下のラインアカウントから友達追加し、「ワークフロー希望」と送信ください。
備忘録のためわかりにくい点が多々あると思います。ご不明な点ございましたら上記のラインアカウントからご質問いただければ回答いたします。(余裕あれば。。。)
この記事が気に入ったらサポートをしてみませんか?