Pythonでブログに画像ファイル(JPG)をアップロードする流れ。

  • URLをコピーしました!

WordPressにログインすることなく、画像ファイルを1クリックでまとめてアップロードするしくみをつくってみました。

Pythonを使ってのプログラミングです。

目次

WordPressに画像をまとめてアップする流れ

ブログを書くときには、画像を使っています。
使っているのは、じぶんで撮った写真。

パソコンに取り込んだ画像をJPGファイルをWordPressにアップロードします。

何度かクリックして、この画面を開いてからまとめてアップロードするのではなく、ログインしていない状態でも任意の場所にあるJPEGファイルをまとめてWordPressにアップロードする。

これをPythonで自動でできるようにしました。

inboxというフォルダにあるJPGファイルはすべてWordPressで利用するという前提です。

Screenshot

Alfredの検索画面で「i」と入力して、Enterを押すと、WordPressに画像がアップされます。

Screenshot

画像を選ぶ必要がなく、WordPressの管理画面にログインしていない状態でも、画像のアップロードができるのが今回のしくみです。

PythonでWordPressに画像をアップロードする流れ

何をおいても、Pythonをパソコンにインストールしないことにははじまりません。

まずは、Macならターミナル、Windowsならコマンドプロンプトという標準のアプリがあります。次のように入力してPythonがインストールされているかどうかを確認し、

もし、インストールされていないようならインストールしましょう。(現状だと3.12.4)

Pythonインストール
https://www.python.org/downloads

そして、仮想環境(パソコンの環境とは別でPython用の環境)をつくっておきます。venv(ブイエンブ)というのがそうです。

あとは、今回のしくみをつくるのにライブラリを画像処理の「pillow」「request」というライブラリが必要になります。これもインストールします。

そのうえで、Pythonのコードをテキストエディタ(メモ帳)などに書いていきます。ただ、コードはChatGPTに聞けば教えてくれます。

一応、わたしがChatGPTに教えてもらいながら、書いたコードを置いておきます。気になる方は開いてもらえれば。

今回書いたPythonコード

This is an example of a single quote: 'word'.

コードをテキストエディタに書いた後、保存しましょう。ここで大事なのは末尾を「.py」とすることです。「upload_image_to_wordpress.py」のように。

いったんはファイル名が「.py.txt」のように表示されるのですが、ファイル名の変更で「.py」にすれば大丈夫です。

ただ、このまま書いてもだめで、じぶんの環境にあわせていくつかを変更する必要があります。

それが、冒頭のところ。

1つは画像の「IMAGE_DIRECTORY」。
JPEGファイルを置いてあるフォルダのパス(Macだとoptionキーを押しながらファイルを右クリックでわかる)を入力します。わたしの場合は、「’/Users/gouemura/Dropbox/0 inbox/’」です。

次にWordPressのURL。これは管理画面にログインするときのURLとは別のURLです。「https://yourwordpresssite.com」のところをご自身のサイトURLに変えていただければ、あとは同じです。

試しにアドレスをコピペして、ごちゃごちゃな文字がでてきたら大丈夫です。

Screenshot

「USERNAME」は、ログインするときのユーザー名で大丈夫です。
ただ、「PASSWORD」」は、ログインするときのパスワードではありません。「アプリケーションパスワード」という別のパスワードをつくる必要があるのです。

WordPressにログイン後、「ユーザー」→「プロフィール」と移動し、下の方にある「アプリケーションパスワード」で任意の名前を入れて保存すると、16桁のランダムな英数字がでてきます。これが「アプリケーションパスワード」として必要になります。

これでターミナル(コマンドプロンプト)で動くかどうかを試してみましょう。ファイル名は「upload_image_to_wordpress」としたので、以下のように入力すると、

WordPressのメディアにファイルがアップロードされています。

Screenshot

上手くいかなかったら、仮想環境を再度つくり直す、ライブラリをインストールし直すなど、ChatGPTに聞きながらちょっとずつ修正していただければ。

AutometerでPythonを動かす

これでPythonは動くのですが、よりシンプルに操作できるようにしたいもの。

Macの場合だと、Finderのアプリケーションにある「Automator」から、Pythonファイルを動かすことができます。

「Automator」を起動して、「アプリケーション」をクリックし、「選択」をクリック(訂正したい場合には左下の「既存の…」をクリック)し、

Screenshot

「シェルスクリプトを実行」を検索。

白い枠のところにPythonを動かすコマンドを入力しましょう。

Screenshot

わたしの場合は、こんなかんじですが、ご自身の環境にあわせて。

これもChatGPTに聞けばわかるかと。

で、わたしの場合には、Alfredを起動して、「i」と入力すると、Pythonファイルが表示され、Enterでアップロードがはじまるようになっています。

ターミナルで動かしても構いません。(ラクだからAlfredをつかっているだけです。)

Screenshot

ということで、ちょっとややこしいPythonですが、ChatGPTに聞きながらやればしくみもちょっとずつはわかってきます。

他にはニーズがないかもしれないけど、じぶんに必要なしくみをつくってみましょう。Pythonでどんなことができるかを知っておくと、どこにもないしくみをつくれるかもしれません。


【編集後記】
昨日はオフ。朝にプログラミング研究。その後、長男(9)と妻と3人でスーパーに行ってランチの食材を調達。その後はイベントホールへ。写真撮影も込みで楽しめました。夜は妻が買ってきてくれたサーティワンのアイスを家族みんなで食べました。わたしはカロリー少なめのガリガリ君のほうが好みですけど。まぁ、たまには付き合います。

【昨日の1日1新】
※「1日1新」→詳細はコチラ
サーティワン キャンディアップル
サントリー天然水 きりっと果実 ピンクグレープフルーツ&マスカット
「Automator」でPython起動


この記事が気に入ったら
いいね または フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次