IFTTTでプロフィール画像が更新できなくなった

IFTTTで以前までプロフィール画像を自動更新できていたのですが、できなくなりました。解決していきます。

注意(更新日:2024/03/18)

IFTTTはTwitter(旧X)において、プロフィール画像及びbio(概要欄)の自動更新機能を停止しました。

メールは来ているのですが、何故かサイトや公式Twitter(旧X)での告知はまだ無いようです。謎。

これに関して私が投稿した記事がこちらにあります。

【お知らせ+近況】Twitter(旧X)のプロフィール画像自動更新を停止します

自動更新については、代替手段なども特に思いあたりません。せっかくなので、Misskeyに行きましょう。楽しいですよ。Webhookなども簡単に使えます。

プロフィール画像がデフォになる

ある日突然、IFTTTでプロフィール画像が全く更新できなくなりました。
更新自体はできるんですが、プロフィール画像がこれになってしまうんです。

File not found ifttt

画像引用元:https://help.ifttt.com/hc/en-us/articles/115010361748-Why-is-there-a-File-not-found-image-on-my-post-

Google Driveから画像を引っ張ってきているのですが、「File not found」という画像になります。個性的っちゃ個性的ですが、真ん中を切り取るために真っ白けっけになります。あまりに没個性。

今回はこれを直していきます。

プロフィール画像を自動で更新したい!

ありがたいことにプロフィール画像を複数の人に描いてもらうことができて、「どれか一つに決めるなんて私にはとても。。。。。。」という状態になっていました。

そういうわけで、自動的にプロフィール画像が変わるようにしました。これが2019年ぐらいの出来事です。懐かしい。

until検索をかけた感じでいうとおそらくこれが最古です。伝説の始まり。

IFTTTとプロフィール画像更新

ところで、世の中にはIFTTTという「サービスとサービスを繋げて自動化させてあげるヨ!」なサービスがあります。便利ですね。

しかし、有料化がいきなり発表されました。しかも月10ドル。青天の霹靂でした。

※現在は値下げ&プランが分岐しており、一番高いプランで月5ドルです。流石に利用者が少なかったのでしょうか(笑)

「無料だよ!!」とユーザーを引き込んでおきながらいきなり無料版ユーザーの首を絞める経営戦略は最低だと思いますが、便利さには抗えず課金をして使い続けています。

プロフィール画像のアップデートは正常に動いています。つまり、問題部分は画像のURLで間違いありません。

そうと分かれば早速直しにいきましょう。

原因

Google Driveで画像やファイルを共有すると、こんな見た目になります。

Copy
https://drive.google.com/file/d/1234AbCd5678DeFg9012HiJk/view?usp=sharing

かつてはこのURLにリンクすればAPIが画像を返してくれていたようなのですが、現在は不可になっています。これが原因で画像を読み出せなくなっていたのですね。

力技(画像の直リンクを取得する)

ブラウザの開発者ツール(F12かCtrl+Shift+I押したら出てくるアレ)から無理やりURLを取得する方法です。

  1. Google Driveを開く
  2. フルサイズの画像を開く
  3. F12を押す
  4. 画像の生URLゲット!

もちろんこの方法はよくありません。

  • 画像のURLが将来的に変わると取得できなくなる
  • めんどくさい

という欠点があります。

それとこのツイートを見てください。

URLが長すぎ。これではメンテナンスが大変です。別の方法を考えましょう。

解決へ

そしてこのブログに行き着きました。

このサイトに変換ツールなるものがあり、ありがたく使わせてもらいました。

変換ツール

ここにGoogle Driveの共有用URLを貼り付けると、

Copy
<img src="https://drive.google.com/uc?id=1234AbCd5678DeFg9012HiJk">

のような感じで、変換してくれます。手動で変換するのは面倒だったので、素晴らしいツールです。

そしてこのURLをIFTTTに貼り付ければ…!

変換ツール

大成功。問題解決!

ところで、この画像URLに実際にアクセスしてみるととんでもない長さのURLにリダイレクトされます。こちらももしかしたら将来使えなくなったり…?

今気づいた

ところで、IFTTTには課金プラン導入と同時に「フィルター」機能が実装されました。

これを使うと、「火曜日は実行しない」とか、「3で終わる日だけ実行する」とかができます。
変数の変換や操作もできます

あれ…?

画像の共有URLをこの形式に自動変換するスクリプトを組めばよかったのでは…?

完全なる余談

ブログにリンクを張ったときにカードが出るようにしたいです。見た目がいいので。そのうち実装します。

役に立ったらコーヒーを注ごう

コーヒーを注ぐおんニャプロフィール画像

この記事が「役に立った!」と思ったら、筆者にコーヒー(300円)を注いであげましょう。きっと執筆の活力になります。
リクエストも受け付けています。やり方はこちら