備忘録

備忘録

Python

PythonでFastAPIを利用してHTMLページを公開する方法

Ⅰ. はじめに タイトルの通り「PythonでFastAPIを利用してHTMLページを公開する方法」です。 Ⅱ. サンプルプログラム web.py # pip install jinja2 import uvicorn from fastapi import FastAPI, Request from fastapi.responses import RedirectResponse from…

PythonでFastAPIを利用してAPIサーバを構築する方法

Ⅰ. はじめに タイトルの通り「PythonでFastAPIを利用してAPIサーバを構築する方法」です。 Ⅱ. サンプルプログラム import secrets import os import uvicorn from fastapi import FastAPI, HTTPException, Depends, status from fastapi.openapi.docs import…

Pythonでhttpxを利用してHTTPリクエストする方法

Ⅰ. はじめに タイトルの通り「Pythonでhttpxを利用してHTTPリクエストする方法」です。 Ⅱ. サンプルプログラム # pip install httpx[socks] import httpx proxy = 'http://127.0.0.1:8008' # proxy = 'socks5://user:pass@host:port' client = httpx.Client(…

pproxyを利用してポートごとに利用するproxyサーバを変更する方法

Ⅰ. はじめに タイトルの通り「pproxyを利用してポートごとに利用するproxyサーバを変更する方法」です。 Ⅱ. やり方 1. サンプルプログラム import asyncio import pproxy basePort = 8000 loop = asyncio.get_event_loop() def getProxies(): return [ '10.0…

import_moduleを利用したプログラムをPyInstallerを利用して実行ファイルを出力する方法

Ⅰ. はじめに import_moduleを利用したプログラムをPyInstallerで実行ファイルを生成し、実行すると以下のエラーが出力されます。 結論からすると「--hidden-import」オプションを指定する必要があります。 > main.exe Traceback (most recent call last): Fi…

Pythonで実行ファイルを出力する方法

Ⅰ. はじめに タイトルの通り「Pythonで実行ファイルを出力する方法」です。 Ⅱ. やり方 1. サンプルプログラムを書く main.py print("helloworld") 2. PyInstallerをインストールする pip install pyinstaller 3. 実行ファイルを出力する pyinstaller main.py…

pyinstallerで作成されたexeをデコンパイルする方法

Ⅰ. はじめに Ⅱ. やり方 1. pyinstxtractor.py をダウンロードする 2. exe を展開する 3. 拡張子を付け足す 4. ヘッダを追加する 5. uncompyle6 をインストールする 6. デコンパイルする 実行結果 トラブルシューティング Q. マジックナンバーが分かりません…

Pythonで画像をトリミングする方法

Ⅰ. はじめに タイトルの通り「Pythonで画像をトリミングする方法」です。 Ⅱ. やり方 1. Pillow をインストールする pip install Pillow 2. サンプルプログラムを書く from PIL import Image img = Image.open('lena.png') # 画像サイズを取得する # width, h…

PythonでファイルタイプやMIMEを取得する(libmagicのラッパーを使う方法)

Ⅰ. はじめに この記事ではPython標準のmimetypesでは無く、libmagicのラッパーであるpython-magicを利用した方法を紹介します。 Ⅱ. 環境 Python 3.7.0 Windows 10 64bit 1709 Ⅱ. やり方 1. 必要なパッケージをインストールする python-magic-bin はWindowsの…

Pythonでjoinする方法

Ⅰ. はじめに タイトルの通り「Pythonでjoinする方法」です。 Ⅱ. やり方 全て文字列の場合 values = ['a', 'b', 'c'] x = ','.join(values) print(x) # a,b,c 数値が含まれる場合 values = ['a', 'b', 1] values = map(str, values) x = ','.join(values) pri…

Pythonでダイナミックリンクライブラリを利用する方法

Ⅰ. はじめに Ⅱ. やり方 1. ダイナミックリンクライブラリを作成する 2. Pythonから呼び出す 実行結果 Ⅲ. 関数名に記号が入っている場合について 参考 Ⅰ. はじめに タイトルの通り「Pythonでダイナミックリンクライブラリを利用する方法」です。 Ⅱ. やり方 1.…

PythonでFlask + MariaDB(MySQL)を使う方法

Ⅰ. はじめに タイトルの通り「PythonでFlask + MariaDB(MySQL)を使う方法」です。 Ⅱ. やり方 1. Flaskをインストールする pip install flask pip install flask-mysql 2. サンプルプログラム from flask import Flask, jsonify from flaskext.mysql import M…

PythonでSQLiteを使う方法

Ⅰ. はじめに Python の sqlite3 は標準ライブラリです。 pipからインストールする必要はありません。 Ⅱ. サンプルプログラム #!/usr/bin/env python3 # coding: utf-8 import sqlite3 conn = sqlite3.connect('main2.sqlite3') c = conn.cursor() # create t…

PythonでRSSを取得する方法

Ⅰ. はじめに タイトルの通り「PythonでRSSを取得する方法」です。 Ⅱ. やり方 1. 必要なモジュールをインストールする pip install feedparser 2. サンプルプログラムを書く main.py #!/usr/bin/env python3 # coding: utf-8 import feedparser import json f…

Python3でMariaDB(MySQL)に接続する方法

Ⅰ. はじめに タイトルの通り「Python3でMySQLに接続する方法」です。 Ⅱ. やり方 1. 必要なものをインストールする RedHat系の場合 yum install python3-devel mysql-devel pkgconfigDebian系 の場合 apt-get install python3-dev default-libmysqlclient-dev…

PythonでPOSTする

Ⅰ. はじめに PythonでPOSTする方法です。 Ⅱ. プログラム import requests # InsecureRequestWarning を非表示にする場合 # from requests.packages.urllib3.exceptions import InsecureRequestWarning # requests.packages.urllib3.disable_warnings(Insecur…

Python ファイル読み込み

プログラム str = open('a.txt').read() print str 実行結果