目次
HEICをJPGに一括変換する方法【Pythonスクリプトで簡単解決】
iPhoneで撮った写真の拡張子が「.heic」になっていて、WordPressにアップできない… そんな経験ありませんか?
HEIC形式は高画質&省容量というメリットがありますが、まだ対応していないサービスも多いのが現状です。
そこで今回は、Pythonを使ってHEIC画像を一括でJPGに変換する方法を解説します。
選んだフォルダ内のHEICをすべてJPGに変換し、元のHEICはバックアップとして@heicフォルダに退避する便利なスクリプトです。
なぜHEICをJPGに変換する必要があるのか?
- WordPressやブログ投稿で使いやすい:JPGは互換性が高く、プラグイン不要でアップロード可能。
- Webサービスとの相性:SNSやクラウドストレージでもJPGの方が確実に表示できる。
- 印刷や資料作成に便利:JPGはOfficeソフトや印刷サービスでも標準的に利用できる。
HEICは優れた形式ですが、現時点では「変換して使う」のが実用的です。
環境構築:Python+.venvで始める
このスクリプトは Python 3.10以上 を推奨します。
仮想環境(.venv)を使うことで、環境を汚さず再現性も高くなります。
# プロジェクト用フォルダを作成
mkdir heic2jpg_tool
cd heic2jpg_tool
# 仮想環境を作成
python -m venv .venv
# 仮想環境を有効化
# Windows
.venv\Scripts\activate
# mac/Linux
source .venv/bin/activate
# 必要ライブラリをインストール
pip install pillow pillow-heif
requirements.txt にまとめておくと便利です👇
pillow
pillow-heifPythonスクリプト全文
これを heic_to_jpg_gui.py として保存してください。
フォルダ選択ダイアログ付きで、初心者でも安心して使えます。
import os
import shutil
import tkinter as tk
from tkinter import filedialog, messagebox
from PIL import Image
import pillow_heif
# HEIC対応を有効化
pillow_heif.register_heif_opener()
def convert_heic_in_directory(directory):
heic_backup = os.path.join(directory, "@heic")
os.makedirs(heic_backup, exist_ok=True)
converted_count = 0
skipped_count = 0
for file_name in os.listdir(directory):
if file_name.lower().endswith(".heic"):
heic_path = os.path.join(directory, file_name)
jpg_path = os.path.join(directory, os.path.splitext(file_name)[0] + ".jpg")
try:
with Image.open(heic_path) as img:
img.convert("RGB").save(jpg_path, "JPEG", quality=95)
shutil.move(heic_path, os.path.join(heic_backup, file_name))
converted_count += 1
except Exception as e:
print(f"❌ 変換失敗: {file_name}, 理由: {e}")
skipped_count += 1
messagebox.showinfo(
"完了",
f"変換完了!\n\n変換した枚数: {converted_count}\n失敗: {skipped_count}\n退避先: {heic_backup}"
)
def main():
root = tk.Tk()
root.withdraw() # メインウィンドウを非表示
target_dir = filedialog.askdirectory(title="HEIC画像のあるフォルダを選択")
if not target_dir:
return
convert_heic_in_directory(target_dir)
if __name__ == "__main__":
main()
使い方
- 上記のコードを保存(例:
heic_to_jpg_gui.py) .venvを有効化して実行python heic_to_jpg_gui.py- フォルダ選択ダイアログが出るので、HEIC画像が入ったフォルダを指定
- 同じフォルダに
.jpgが出力され、元の.heicは@heicフォルダに自動退避
これでWordPressにすぐアップできるJPEG画像が一気に手に入ります。
まとめ
- HEICはiPhone標準だけど互換性が低い
- Pythonスクリプトで一括変換すれば、毎回の手間がゼロになる
.venvを使えば環境を壊さず、誰でも再現可能
この仕組みを導入すれば、「HEICをJPGに変換してからブログに載せる」作業が一瞬で終わるようになります。
特にWordPressブロガーや写真をよく使う人にとっては、かなり強力な自動化ツールになるはずです。

