Programming

A collection of 4 posts
【セキュリティ】プレースホルダでSQLインジェクションを防ぐ
IT

【セキュリティ】プレースホルダでSQLインジェクションを防ぐ

前回までで、SQLインジェクションとOSコマンドインジェクションの実験を行いました。 今回は、プレースホルダという機能を使って、PHPコードをSQLインジェクションができない安全なコードにしていきたいと思います。 次のコードは、前回まで使用していたsectest.phpの内容です。 <?php $servername = "localhost"; $username = "sectest"; // DB sectestにアクセスするユーザー $password = "sectestpass"; $dbname = "sectest"; $conn = new mysqli($servername, $username, $password, $dbname); // エラー確認 if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error)
3 min read
PythonからOllama APIを使って、文章を要約する
Programming

PythonからOllama APIを使って、文章を要約する

前回「Ollama APIを使用してみる」で、Ollama APIを試してみました。 今回は、PythonとOllama APIを使って、PDFファイルの要約をGemma3にしてもらおうと思います。 春期の情報処理試験も近いですので、それに関連するPDFの要約を作成してみましょう。 必要なライブラリのインストール pip install aiohttp PyMuPDF import fitzとあるのでpip install fitzとしがちですが、pip install PyMuPDFです。 Pythonコード(ファイル名: summarize_pdf_ollama.py) import asyncio import aiohttp import fitz # pip install fitzではなく、pip install PyMuPDF import sys import os import time import json
5 min read
【Termux+Python】Pydanticを導入してみた
Programming

【Termux+Python】Pydanticを導入してみた

Pydantic は、Python用のデータバリデーションおよびデータモデルライブラリです。Pythonの型ヒント (type hints) を活用して、データのバリデーションや変換を自動で行います。 Pydanticを導入することにより、下記の利点があります。 * バリデーションの自動化型ヒントを使うだけで、詳細なバリデーション処理を簡単に定義できる。 * 可読性の向上データモデルが明確になり、コードの可読性が高まる。 * エラー対応が楽になるバリデーションエラーが詳細に表示され、デバッグしやすい。 * API開発が効率化FastAPIなどと組み合わせると、エンドポイントのパラメータバリデーションやスキーマ生成が簡単。 * 型変換が便利データベースや外部APIから取得したデータの変換が容易。 Pydanticの導入方法 1. Rustをインストールする pydantic v2は高速化のために一部をRustで実装しており、デフォルトでビルド時にRustコンパイラを要求します。したがって、Pydanticをインストールする前にRustを導入します。 $ pkg u
2 min read
【Termux+Python】AndroidでPythonを動かす
Programming

【Termux+Python】AndroidでPythonを動かす

Androidの環境でPythonを動かす方法は、いくつかありますが、ここではLinux環境に近い操作が可能なTermux上でPythonを動かす方法をご紹介します。 Termuxは、Android端末上で動作するLinux端末エミュレータ兼パッケージ管理システムです。 1. F-Droidをインストールする PlayストアからもTermuxはダウンロードできますが、バージョンが古いようですので、F-DroidまたはGitHubから最新版をインストールすることが推奨されています。ここでは、F-Droid経由でインストールしていきます。 * F-Droid公式サイト(https://f-droid.org/ja/ ) サイトに表示されているQRコードから、F-Droidのインストールを行います。 QRコードを読み込むとF-Droid.apkがダウンロードされるので、「パッケージ インストーラで開く」で開きインストールを行います。 2. F-DroidからTermuxをインストールする 2-1. F-Droidを起動したら虫眼鏡のボタンを押し
2 min read