IFTTTでプロフィール画像が更新できなくなった
IFTTTで以前までプロフィール画像を自動更新できていたのですが、できなくなりました。解決していきます。
注意(更新日:2024/03/18)
IFTTTはTwitter(旧X)において、プロフィール画像及びbio(概要欄)の自動更新機能を停止しました。
メールは来ているのですが、何故かサイトや公式Twitter(旧X)での告知はまだ無いようです。謎。
これに関して私が投稿した記事がこちらにあります。
【お知らせ+近況】Twitter(旧X)のプロフィール画像自動更新を停止します
自動更新については、代替手段なども特に思いあたりません。せっかくなので、Misskeyに行きましょう。楽しいですよ。Webhookなども簡単に使えます。
プロフィール画像がデフォになる
ある日突然、IFTTTでプロフィール画像が全く更新できなくなりました。
更新自体はできるんですが、プロフィール画像がこれになってしまうんです。
Google Driveから画像を引っ張ってきているのですが、「File not found」という画像になります。個性的っちゃ個性的ですが、真ん中を切り取るために真っ白けっけになります。あまりに没個性。
今回はこれを直していきます。
プロフィール画像を自動で更新したい!
ありがたいことにプロフィール画像を複数の人に描いてもらうことができて、「どれか一つに決めるなんて私にはとても。。。。。。」という状態になっていました。
そういうわけで、自動的にプロフィール画像が変わるようにしました。これが2019年ぐらいの出来事です。懐かしい。
自動プロフィール画像更新 at April 28, 2019 at 12:01AM #NewProfilePic #ifttt
— Blue Triangle+ (@Ao_Sankaku) April 27, 2019
until検索をかけた感じでいうとおそらくこれが最古です。伝説の始まり。
IFTTTとプロフィール画像更新
ところで、世の中にはIFTTTという「サービスとサービスを繋げて自動化させてあげるヨ!」なサービスがあります。便利ですね。
しかし、有料化がいきなり発表されました。しかも月10ドル。青天の霹靂でした。
※現在は値下げ&プランが分岐しており、一番高いプランで月5ドルです。流石に利用者が少なかったのでしょうか(笑)
「無料だよ!!」とユーザーを引き込んでおきながらいきなり無料版ユーザーの首を絞める経営戦略は最低だと思いますが、便利さには抗えず課金をして使い続けています。
プロフィール画像のアップデートは正常に動いています。つまり、問題部分は画像のURLで間違いありません。
そうと分かれば早速直しにいきましょう。
原因
Google Driveで画像やファイルを共有すると、こんな見た目になります。
https://drive.google.com/file/d/1234AbCd5678DeFg9012HiJk/view?usp=sharing
かつてはこのURLにリンクすればAPIが画像を返してくれていたようなのですが、現在は不可になっています。これが原因で画像を読み出せなくなっていたのですね。
力技(画像の直リンクを取得する)
ブラウザの開発者ツール(F12かCtrl+Shift+I押したら出てくるアレ)から無理やりURLを取得する方法です。
- Google Driveを開く
- フルサイズの画像を開く
- F12を押す
- 画像の生URLゲット!
もちろんこの方法はよくありません。
- 画像のURLが将来的に変わると取得できなくなる
- めんどくさい
という欠点があります。
それとこのツイートを見てください。
IFTTTってやつで自動更新してるんだけど、なぞに画像の読み出しができなくなってめんどくさくなってきた pic.twitter.com/xQ7Cde3aDz
— Blue Triangle+ (@Ao_Sankaku) 2023年5月6日
URLが長すぎ。これではメンテナンスが大変です。別の方法を考えましょう。
解決へ
そしてこのブログに行き着きました。
このサイトに変換ツールなるものがあり、ありがたく使わせてもらいました。
ここにGoogle Driveの共有用URLを貼り付けると、
<img src="https://drive.google.com/uc?id=1234AbCd5678DeFg9012HiJk">
のような感じで、変換してくれます。手動で変換するのは面倒だったので、素晴らしいツールです。
そしてこのURLをIFTTTに貼り付ければ…!
大成功。問題解決!
ところで、この画像URLに実際にアクセスしてみるととんでもない長さのURLにリダイレクトされます。こちらももしかしたら将来使えなくなったり…?
今気づいた
ところで、IFTTTには課金プラン導入と同時に「フィルター」機能が実装されました。
— Blue Triangle+ (@Ao_Sankaku) May 20, 2023
これを使うと、「火曜日は実行しない」とか、「3で終わる日だけ実行する」とかができます。
変数の変換や操作もできます。
あれ…?
画像の共有URLをこの形式に自動変換するスクリプトを組めばよかったのでは…?
完全なる余談
ブログにリンクを張ったときにカードが出るようにしたいです。見た目がいいので。そのうち実装します。