【SQLite Python 使い方】自動化の味方!初心者でも簡単データベース操作

※この記事にはアフィリエイトリンクを含みます(PR) どうも、AIツール実践者兼SEOライターの「ぷーた」です。 皆さんは、日々の業務や趣味で、データを管理したり、繰り返し作業を自動化したりする際に、どんなツールを使っていますか? ExcelやCSVファイルも便利ですが、データ量が増えたり、複雑な検索や更新が必要になったりすると、管理が煩雑になりがちですよね。 そこで自分が最近ヘビーローテーションで活用しているのが、PythonとSQLiteの組み合わせです。これ、本当に便利なんです。 「データベースって聞くと難しそう…」 「PythonでSQLiteなんて、プログラミング上級者向けなんじゃ…」 そう思われた方もいるかもしれません。でも、安心してください! SQLiteは、特別なサーバーが不要で、ファイル一つで完結する軽量なデータベースなので、Pythonとの連携も非常にシンプルです。自分が実際に使ってみて、「もっと早く知りたかった!」と強く感じたので、今回はその魅力を、初心者の方にもわかりやすく、具体的な使い方と共にお伝えしたいと思います。 この記事を読めば、 SQLiteとPythonの連携方法がわかる 基本的なデータベース操作(作成、テーブル作成、データ挿入、検索、更新、削除)ができるようになる Pythonを使ったデータ自動化の第一歩が踏み出せる という状態を目指せます。さあ、あなたもPythonでデータ管理・自動化の扉を開きましょう! SQLiteとは? Pythonで扱うメリット まず、SQLiteとは一体何なのか、そしてなぜPythonで使うと便利なのかを簡単に説明しておきましょう。 SQLiteは、サーバーを必要としない、ファイルベースのリレーショナルデータベース管理システム(RDBMS)です。つまり、データベースを操作するための特別なソフトウェアをインストールしたり、設定したりする必要がなく、単一のファイル(.dbや.sqlite拡張子が多い)として存在します。この手軽さが最大の魅力です。 Pythonには、標準ライブラリとしてsqlite3モジュールが組み込まれています。つまり、Pythonさえインストールされていれば、追加のライブラリをインストールすることなく、すぐにSQLiteを操作できるのです。 自分がPythonとSQLiteを使い始めたのは、Webスクレイピングで取得した大量のデータを効率的に保存・管理したかったからです。Excelだと管理しきれなくなったデータも、SQLiteなら構造化して保存できるので、後から必要な情報だけを瞬時に取り出せます。さらに、Pythonの強力なデータ処理能力と組み合わせることで、 定期的なデータ収集とデータベースへの自動登録 特定の条件に合致するデータの抽出とレポート作成 Webアプリケーションのバックエンドとしてデータの永続化 など、様々な自動化や効率化が可能になります。 PythonでSQLiteデータベースを操作する基本手順 では、具体的にPythonでSQLiteをどう使うのか、基本的な流れを見ていきましょう。自分はいつも以下のステップで作業を進めています。 1. SQLiteデータベースへの接続 まずは、Pythonのsqlite3モジュールを使って、データベースファイルに接続(または新規作成)します。コードは非常にシンプルです。 import sqlite3 # データベースファイル名(存在しない場合は新規作成されます) db_file = 'my_database.db' try: # データベースに接続 conn = sqlite3.connect(db_file) print(f"'{db_file}' への接続に成功しました。") # カーソルオブジェクトを作成(SQL文を実行するために必要) cursor = conn.cursor() except sqlite3.Error as e: print(f"データベースエラー: {e}") finally: # 接続を閉じる(通常は処理の最後に) if conn: conn.close() print("データベース接続を閉じました。") このコードを実行すると、my_database.dbという名前のファイルがカレントディレクトリに作成(または既存のファイルに接続)されます。connオブジェクトがデータベースとの接続を表し、cursorオブジェクトを使ってSQLコマンドを実行します。 ポイント: sqlite3.connect()に渡すファイル名で、データベースが作成されるか既存のものに接続されるかが決まります。コードの最後にconn.close()で接続を閉じるのが、リソース管理の基本です。ただし、with文を使うと、より安全かつ簡潔に接続を管理できます。 ...

February 28, 2026 · 2 分 · ぷーた
Mac miniを自動化サーバーにしたら副業が回り始めた|24時間稼働の実態

Mac miniを自動化サーバーにしたら副業が回り始めた|24時間稼働の実態

本記事には広告・アフィリエイトリンクが含まれています(景品表示法に基づくPR表記) Mac miniを自宅サーバーにして半年が経った こんにちは、ぷーたです。副業の自動化を進める中で、「常時稼働するマシンが欲しい」という壁にぶつかりました。VPSも検討しましたが、最終的にMac miniを24時間稼働の自動化サーバーとして使うことにしました。 半年運用してみた実感を、設定方法から電気代まで正直に書きます。 なぜMac miniなのか?VPSとの比較 VPSのメリット・デメリット VPS(さくらVPS、ConoHa等)は月額数百円から借りられて手軽です。ただし、スペックを上げると月額が跳ね上がります。メモリ4GB・2コアで月1,000〜2,000円程度が相場です。 Mac miniを選んだ理由 僕が使っているのはApple Silicon搭載のMac miniです。選んだ理由は3つ。 ローカルにデータを置ける:APIキーや学習データをクラウドに上げなくて済む 十分なスペック:メモリ16GB・高速SSDで複数スクリプトを同時実行できる 消費電力が低い:実測で待機時約5W前後、負荷時でも20〜30W程度 Mac miniの初期費用は決して安くありませんが、1年以上使うなら月額換算でVPSより安くなる計算です。 実際の消費電力と電気代 ワットチェッカーで実測しました。 アイドル時:約5〜7W Pythonスクリプト実行時:約15〜25W 高負荷時(ML学習等):約30〜40W 1日の平均消費を仮に10Wとすると、月の電力量は約7.2kWhです。電気代の単価を30円/kWhとすると月額約216円。VPSの月額料金と比べるとかなり安いです。 ※電気料金は契約プランや地域によって異なります。上記は目安です。 launchdでスクリプトを自動実行する方法 macOSにはcronの代わりにlaunchdというジョブスケジューラが標準搭載されています。これが非常に便利です。 plistファイルの作成 ~/Library/LaunchAgents/ にplistファイルを置きます。 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>com.example.my-script</string> <key>ProgramArguments</key> <array> <string>/usr/bin/python3</string> <string>/Users/you/scripts/my_script.py</string> </array> <key>StartCalendarInterval</key> <dict> <key>Hour</key> <integer>9</integer> <key>Minute</key> <integer>0</integer> </dict> <key>StandardOutPath</key> <string>/tmp/my_script.log</string> <key>StandardErrorPath</key> <string>/tmp/my_script_error.log</string> </dict> </plist> 登録と確認 launchctl load ~/Library/LaunchAgents/com.example.my-script.plist launchctl list | grep my-script これで毎朝9時にPythonスクリプトが自動実行されます。ログも指定したパスに出力されるので、問題があればすぐに確認できます。 ...

February 22, 2026 · 1 分 · ぷーた
YouTube Shorts 自動投稿パイプラインの作り方|AIで台本から動画生成まで

YouTube Shorts 自動投稿パイプラインの作り方|AIで台本から動画生成まで

本記事には広告・アフィリエイトリンクが含まれています(景品表示法に基づくPR表記) YouTube Shortsの投稿を半自動化してみた こんにちは、ぷーたです。副業でYouTube Shortsに動画を投稿しているのですが、毎回手作業で台本を書いて、録音して、編集して…とやるのは本業のあるサラリーマンには正直キツいです。 そこで台本生成から動画出力までを半自動化するパイプラインを作りました。完全自動ではなく、要所で人間が確認を入れる「半自動」です。この記事では実際に使っているツールと手順を紹介します。 パイプラインの全体像 僕のパイプラインは以下の4ステップです。 台本生成:Claude Codeでスクリプトを作成 音声合成:VOICEVOXでナレーション生成 動画編集:FFmpegで素材を結合 アップロード:YouTube Studio(ここは手動) それぞれ詳しく説明します。 ステップ1:Claude Codeで台本を生成 台本のテンプレートを事前に用意しておき、Claude Codeに「このテーマで台本を書いて」と指示します。 僕が使っているテンプレート構成はこうです。 フック(1.5秒):視聴者の注意を引く一言 本体(6〜8文):具体的な情報を伝える エンドカード(2秒):フォローやチャンネル登録のCTA Claude Codeはプロジェクト内のテンプレートファイルを読み込めるので、「前回の台本と同じトーンで」といった指示も通ります。 注意点:AIが生成した台本はそのまま使わず、必ず自分で読み返して修正します。事実確認が不十分な内容や、誇張表現が含まれていることがあるためです。 ステップ2:VOICEVOXで音声合成 台本が確定したら、VOICEVOXでナレーション音声を生成します。VOICEVOXは無料で使えるテキスト音声合成ソフトで、商用利用も可能です(キャラクターごとの利用規約を要確認)。 僕はVOICEVOXのAPIを叩くPythonスクリプトを作っています。 import requests import json def generate_voice(text, speaker_id=3, output_path="output.wav"): # 音声合成クエリの作成 query_res = requests.post( "http://localhost:50021/audio_query", params={"text": text, "speaker": speaker_id} ) query = query_res.json() # 音声合成の実行 synth_res = requests.post( "http://localhost:50021/synthesis", params={"speaker": speaker_id}, data=json.dumps(query) ) with open(output_path, "wb") as f: f.write(synth_res.content) VOICEVOXをローカルで起動しておけば、このスクリプトで一発で音声ファイルが生成されます。 ...

February 22, 2026 · 1 分 · ぷーた