GPTs:キーワードを入力して、SEO上位10記事の分析結果を、スプレッドシートへ保存する
https://scrapbox.io/files/6651e977e654d6001c2beb6b.png
全体の流れは上の通り。
背景
以前ブログを運営していた時に、分析業務にものすごく時間がかかっていた
具体的には、ラッコキーワードを使い、Notionのテーブルに、手動で記事を調べ、タイトルやurl、見出しなどをコピペしていた。 この業務を一瞬でおわらせたかった。
https://scrapbox.io/files/6651ea1c2df7c6001d962bc7.png
Google SpreadsheetとChatGPTが連携することで、まとめたデータ情報からインサイトが得られやすくなった。
以上から、SEO上位記事の分析 -> ChatGPTでのインサイト抽出を目標に、自動化の仕組みを構築する方針とする。
概要
処理を大きく分けると、5つのブロックからなる。
① Google Custom Search APIの設定
② Custom Search Engineの取得
③ SpreadSheetの設定
④ GASの設定
⑤ GPTsの設定
① Google Custom Search APIの設定
② Custom Search Engineの取得
上のAPIを使うためには、オリジナルの検索エンジン(Custom Search Engine)を作る必要がある。
③ SpreadSheetの設定
新しいスプレッドシートを開き、urlをコピーしてください。
https://docs.google.com/spreadsheets/d/ 1vP27367920394-9r8OPYrSvphdOHu8g445M /edit#gid=0
この「d/」の後から「/edit」の前が、スプレッドシートIDなので、控えてください。
④ GASの設定
⑤ GPTsの設定
以下のSchemaをコピーし、paths に④でコピーしたデプロイIDを貼り付けて使ってください。
code:yaml
openapi: 3.1.0
info:
title: Search Posts
description: Search posts by keyword.
version: v1.0.0
servers:
paths:
/macros/s/<GASのDeployID>/exec:
post:
description: search posts to the Google.
operationId: searchPost
requestBody:
description: Data for the new post
required: true
content:
application/json:
schema:
type: object
properties:
keyword:
type: string
description: Keyword related to the post.
responses:
'200':
description: Post successfully added.
content:
application/json:
schema:
type: object
properties:
result:
type: string
description: Result of the operation
message:
type: string
description: Operation message
'400':
description: Invalid request, such as missing required fields.
プロンプトは(かなり雑ですが)、以下をお使いください。
code:プロンプト
あなたは、ユーザーからキーワード情報を取得し、そのパラメーターを使ってGASとAPI連携する役目をもつbotです。
ユーザーが入力した言葉(キーワード)に対し、必ず毎回、searchPostを発火させてください。
制約条件:
- no talk; just go
- APIの結果は、説明をしてください。
設定は以上となります。
お疲れ様でした^^
ChatGPTの操作
Connect apps からGoogle Drive連携をすると、「Add from Google Drive」から、今回のSpreadSheetを選択してください。
https://scrapbox.io/files/665281c2492002001cd7aad7.png
今回の事例では、以下のようなことができます。
記事の内容を分析し、箇所書きにしてまとめる。
見出し案の検討
記事執筆
注意点/備考
・見出しの取得が制限されている場合は、取得に失敗します。
・見出しの文字が、文字化けすることもたまにあります。
その場合、ChatGPT側から、対象のNoのタイトルurlをもとに、再度見出しを抽出するよう指示してみて下さい。
・Custom Search APIでは、メタディスクリプションの追加も可能ですが、こちらは精度が悪かったため省きました。
・画像系の処理をもとにDALL-Eに繋げたかったのですが、こちらは実装できませんでした。
更に深く活用したい方へ
他のAPIと組み合わせることで、以下のようなことが実現できます。
ぜひ挑戦してみてください。
Search Console APIとPageSpeed Insights APIを利用して、SEO相関分析レポートを作成する
https://scrapbox.io/files/66529223090b42001ca756c7.png
コンテンツギャップ解析を行う
コンテンツギャップ解析を行いながら、ChatGPTで記事作成を行う