ChatGPTでBookmarkletを作らせてみたら、仕事してくれた

Memeplex「ChatGPTを擬人化。日本人の男性風で。」浮世絵風でと依頼して描いてもらいました

ChatGPTでデータベースの設計をやらせてみたとか色々な事例があったので、自分でも試してみました。 以下、やり取りを貼っておきます。

自分の質問

表示されているURLからタイトル・URLを取得し、Markdownのリンク記法に変換するbookmarkletを作って欲しいです。

ChatGPTさんの回答

以下が、要求されたbookmarkletです。

javascript:(function(){var%20url=window.location.href;var%20title=document.title;var%20mdLink='['+title+']'+'('+url+')';prompt('Markdown Link:',mdLink)})();

このbookmarkletを使うには、以下の手順に従ってください。

  1. ブラウザのブックマークバーを表示します。
  2. 新しいブックマークを追加するためのボタンをクリックします。
  3. ブックマークの名前を入力します(例:「Markdown Link」)。
  4. URLの欄には、以下のコードを貼り付けます。
javascript:(function(){var%20url=window.location.href;var%20title=document.title;var%20mdLink='['+title+']'+'('+url+')';prompt('Markdown Link:',mdLink)})();
  1. ブックマークレットを保存します。
  2. ブックマークレットを使うには、変換したいウェブページを開き、先ほど作成したブックマークレットをクリックします。
  3. ポップアップが表示され、Markdownのリンク記法が含まれたテキストが表示されます。
  4. ポップアップ内のテキストをコピーし、必要な場所に貼り付けます。

このbookmarkletは、現在表示されているページのURLとタイトルを取得し、Markdownのリンク記法に変換します。ポップアップウィンドウが表示され、Markdownリンクが含まれたテキストが表示されます。必要に応じて、テキストをコピーして貼り付けることができます。


ちゃんと動く!

更に質問

お礼も言いつつ、ブラウザで表示されているページ内で選択した範囲のリンクを取得するものを依頼。 今気がついたけど、改行を「開業」と書き間違えていた。

ありがとうございます。 次に、表示されているURLで選択している範囲にある、aタグを取得するbookmarkletを作って欲しいです。 この際複数のaタグがある場合は、1行ずつ開業して下さい。

ChatGPTさんの回答

以下が、要求されたbookmarkletです。

javascript:(function(){var%20links=document.getSelection().getRangeAt(0).cloneContents().querySelectorAll('a');var%20mdLinks='';links.forEach(function(link){mdLinks+=link.textContent+' ('+link.href+')\n';});prompt('Markdown Links:',mdLinks)})();

このbookmarkletを使うには、以下の手順に従ってください。

  1. ブラウザのブックマークバーを表示します。
  2. 新しいブックマークを追加するためのボタンをクリックします。
  3. ブックマークの名前を入力します(例:「Selected Links」)。
  4. URLの欄には、以下のコードを貼り付けます。
javascript:(function(){var%20links=document.getSelection().getRangeAt(0).cloneContents().querySelectorAll('a');var%20mdLinks='';links.forEach(function(link){mdLinks+=link.textContent+' ('+link.href+')\n';});prompt('Markdown Links:',mdLinks)})();
  1. ブックマークレットを保存します。
  2. 選択したい範囲のテキストをハイライトします。
  3. 先ほど作成したブックマークレットをクリックします。
  4. ポップアップが表示され、選択した範囲内にあるaタグのMarkdownリンクが含まれたテキストが表示されます。
  5. ポップアップ内のテキストをコピーし、必要な場所に貼り付けます。

このbookmarkletは、選択した範囲内にあるaタグを取得し、Markdownリンクに変換して表示します。複数のaタグがある場合は、1行ずつ開業して表示されます。ポップアップ内のテキストをコピーして、必要な場所に貼り付けることができます。


これもきちんと動くものを用意してくれた!しかもブックマークの名前について、想定した仕様にそったものを考えてくれている。

更に質問

Markdownになっていたほうが便利かもしれなかったので、それも依頼してみる。

ありがとうございます。 Markdownのリンク記法にしてもらえますか?

ChatGPTさんの回答

申し訳ありません、前回の回答が間違っていました。以下が、要求されたbookmarkletです。

javascript:(function(){var%20links=document.getSelection().getRangeAt(0).cloneContents().querySelectorAll('a');var%20mdLinks='';links.forEach(function(link){mdLinks+='['+link.textContent+']'+'('+link.href+')\n';});prompt('Markdown Links:',mdLinks)})();

このbookmarkletを使うには、以下の手順に従ってください。

  1. ブラウザのブックマークバーを表示します。
  2. 新しいブックマークを追加するためのボタンをクリックします。
  3. ブックマークの名前を入力します(例:「Selected Links」)。
  4. URLの欄には、以下のコードを貼り付けます。

ここで処理がフリーズしてしまう。


これも問題なく動作してくれました。

その後も

こちらの内容で問題ありません。ありがとうございます。 追加で、リンクのURLだけ取得するバージョンを用意して下さい。 と質問したら、

javascript:(function(){var%20links=document.getSelection().getRangeAt(0).cloneContents().querySelectorAll('a');var%20urls='';links.forEach(function(link){urls+=link.href+'\n';});prompt('URLs:',urls)})();

を出してくれて、こちらも問題なく動作しました。

わかりやすくChatGPTさんに説明して上げるのがコツかも知れませんね。 いやー面白い時代になりました。