ものづくりのブログ

うちのネコを題材にしたものづくりができたらいいなと思っていろいろ奮闘してます。

Python

python で json -> csv 変換

json から csv に変換させたい場合のメモをここに残します。 データ 入力データ(json) { "template": [ { "path": {{path}}, "accountId": {{accountId}}, "templateData":{{templateData}} }, { "path": {{path}}, "accountId": {{accountId}}, "templateDa…

PyDrive をアップグレードしたら Google ドライブにアップロードする処理が失敗するようになって困った

PyDrive を使った古いプログラムを改修してライブラリをアップグレードしたら、 Google ドライブにアップロードする処理が失敗するようになって困ったためここに回避方法をメモします。 エラー httplib2 で RedirectMissingLocation という例外が発生してい…

python : yield の動きを調べてみる

yield の動きがピンとこないので、動作を調べてみました。 return と yield の違いについて return と yeild を比較してみます。 return 関数の処理の終了 値を返す yeild 関数の処理を 一旦停止 再度実行の場合 (yeild の次行から) 値を返す プログラム yei…

python で pep8 の E501 とは何か調べてみる

python で開発を行っていると、たまにプルリクエストのコメントで E501 の指摘を目にします。 そこで今回は、pep8 の E501 についてメモしようと思います。python には pep8 というコーディング規約があります。 www.python.orgE501 は「E501 line too long…

python - うちのねこの画像をリサイズ

うちのネコの写真を OpenCV でリサイズしてみました。 import cv2 from matplotlib import * from pylab import * fname = "cat.jpg" img = cv2.imread(fname) imshow(img) リサイズ dst = cv2.resize(img, dsize=None, fx=0.1, fy=0.1) imshow(dst)

Python - Plotly でチャート作成

Python でデータ可視化の方法をここにメモしとこうと思います。 今回は Plotly を使ったチャートの作成方法です。 Plotly とは 前提条件 サンプルチャート作成手順 plotly インストール サンプルチャート Bar Chart Plotly とは カーソルを合わせると、その…

docker-compose を自分なりにまとめてみる(postgresとdjangoのアプリ)

今回はdockerを使ってpostgresとdjangoを使ったアプリの開発環境を作成する方法をここにメモしたいと思います。 docker-composeとは docker-compose を使うまでのステップ 作業フォルダ作成 Dockerfile 作成 Dockerfile に記載している requirements.txt 作…

Pyinstaller で作成した exe ファイルがセキュリティソフトのチェックに引っかかってしまい色々調べてみた

Pyinstaller でビルドしたアプリがセキュリティソフトのフィルタに突然ヒットするようになったので原因を調べてみました。 同じような症状が出ていて対策を検討しているサイト 改善はみられなかったけど実施してみたこと pyinstaller の bootloader をリビル…

cx_Freeze を使ってみる

Python のスクリプトファイルを exe 化する方法に cx_Freeze というものがあります。 今回は cx_Freeze について使い方をまとめてみました。 cx_Freeze とは 作成手順 cx_Freeze インストール exe ファイル作成 python スクリプト作成 setup.py ファイル作成…

【python】py2exe を使ってみる

py2exe は、python スクリプトを Windows の実行ファイル(.exeファイル)に変換するアプリケーションです。 py2exe インストール 以下のコマンドでインストールします。 $ pip install py2exe 変換手順 python スクリプト作成 setup.py 作成 変換コマンド実行…

Pyinstallerでバイナリ化した実行ファイルにダイナミックリンクしているものがあったので完全に静的なライブラリ化をめざす方法

以前 Pyinstaller で実行ファイルを作成したのですが、ダイナミックリンクで作成されており、環境依存の問題を考慮し、完全に静的なライブラリで完結する実行ファイルにできないか調査してみました。 a1026302.hatenablog.com以下のサイトを参考に完全に静的…

PyInstaller で作った実行ファイルが crowdstrike で誤検知

Python で作成したプログラムがある日を境にセキュリティソフトに引っかかるようになってしまった。いろいろ回避策を模索しているがうまくいかず。。。 とりあえずこれまでの対応をいったんメモ。。。 状況 Windows 環境で PyInstaller を用いて exe を作成…

python3.10 で pyinstaller をインストールすると _bootlocale というモジュールがないといわれる場合の対応

python3.10 で pyinstaller をインストールするとそのままビルドすると "_bootlocale" というモジュールがないというエラーになったためその時の対応方法をここにメモします。 エラー 以下のコマンドを実行すると、処理の途中でエラーになってしまいます。 C…

python の実行ファイルで動的リンクエラーを回避する

pyinstaller で python の実行ファイルを作成しても、実行環境によっては動的リンクエラーになることがあリマス。その場合は、staticx というツールを使って静的リンクのみの実行ファイルを作成することでエラーが回避できるようです。pyinstaller について…

ubuntu で pyinstallerを使ったらエラーが出た困った話

ubuntu で pyinstallerを使ったらエラーが出た困った時の対応方法をメモします。 症状 エラーメッセージ エラーの内容 対応したこと 実行環境確認 回避策 再度 pyinstaller 実行 症状 ubuntuの環境で pyinstaller を使ったら以下のエラーが出てきました。 エ…

PyInstallerを使ってみる

windows の作業端末に pythonスクリプトの配布を検討していたのですが、環境構築が手間なので PyInstaller を使ってWindows用の exeファイルを配布することを検討してみました。 今回は、pythonスクリプトを実行ファイルに変換する作成手順をここにまとめて…

windows 環境で CP932 以外のファイルを開こうとしたらエラーになった話(python)

windows 環境で python のスクリプトを作成していたら utf-8 のファイルを開こうとしたら以下のようなエラーが出た。 UnicodeDecodeError: 'cp932' codec can't decode byte 0xef in position 0: illegal multibyte sequenceファイルを開こうとした処理は以…

selenium で Message: newSession というエラーが出る

python で selenium を使って Firefox からの自動処理を実装していたところ、ある日を境にエラーが出てしまったので対応方法を調査してみました。 症状 対応方法検討 対策 参考 症状 webdriver.Firefoxを使っていたら以下のようなエラーが出ました。 (ちょっ…

unicode error “unicodeescape”というエラーの回避方法

windows 環境で python のプログラムを作成していたら以下のようなエラーに遭遇した。 SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape エラーの場所 5行目の「binary_location」のパ…

cron から python で作った selenium のコードを実行したら動かなかった時の話...

cron から pythonで作った selenium のコードを動かしたら以下のようなエラーが出た。 Traceback (most recent call last): File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/Selenium/webdriver/common/service.py", …

mac で cron を使おうとしたら「[Errno 1] Operation not permitted」というエラーが出てしまっとときの対応

Mac で Python のプログラムを cron から実行させようとしたところうまくいきません。 症状 crontab の設定内容 err.log の内容 問題点 回避方法 症状 crontab の設定内容 crontab の設定は以下の通りです。 0,30 * * * * /Users/{{user}}/.pyenv/shims/pyth…

エクセルファイルを pandas の dataframe に読み込ませて spreadsheets に貼り付ける方法

エクセルファイルを pandas の dataframe に読み込ませて spreadsheets に貼り付ける方法をまとめてみました。 事前準備 python gspread-dataframeインストール エクセルファイル操作 スプレッドシート操作 スプレッドシートにコピー 事前準備 python から s…

python でスプレッドシートを操作する際の準備について

python で Google のスプレッドシートを操作する際の手順をまとめてみました。 Google Cloud Platform の設定 プロジェクト作成 APIの選択 Google Drive API Google Sheets API 認証情報 スプレッドシートの設定 python パッケージインストール gspread oaut…

pandas でエクセルを読み込もうとしたらエラーになったので対応をメモ

pandas で以下のようにエクセルを読み込もうとしたらエラーになってしまいました。 エラー エラーのコード エラーの内容 対応 openpyxlをインストール コード修正 エラー エラーのコード import pandas as pd df = pd.ExcelFile('./sample.xlsx') エラーの内…

「WARNING: `pyenv init -` no longer sets PATH.」の対応を調べる

pyenvを使っていたらある時期から以下の「warning」 が出てpyenvがおかしくなりました。 WARNING: `pyenv init -` no longer sets PATH. Run `pyenv init` to see the necessary changes to make to your configuration.対応方法が以下にあったのでここにメ…

Python で "No module named 'apiclient.discovery'" エラーへの対応

Python で "No module named 'apiclient.discovery'" と出て困った。以下を実行する。 from apiclient.discovery import build こんなエラーが出てくる。 --------------------------------------------------------------------------- ModuleNotFoundError…

Run `pyenv init` to see the necessary changes to make to your configuration.

pyenvの調子がおかしくなった。 pyenv versions system 2.7.16 * 3.9.4 (set by /Users/xxxxx/.pyenv/version)pythonのバージョンを確認してみる。 $ python -V Python 2.7.16???シェルを起動時すると以下のようなメッセージが表示される。 . ~/.zshrc WARNI…

「SyntaxError: bytes can only contain ASCII literal characters.」

Pythonで全角文字をバイト変換しようとしたら、以下ようなエラーが出ました。 以下のように対応できそうです。 str = 'あ' print(str.encode("UTF-8")) 出力 b'\xe3\x81\x82'

暗号化処理で「AttributeError: module 'time' has no attribute 'clock'」というエラーが出て困る

暗号モジュールを使って以下のような処理を実行したら、エラーで困りました。 pythonのバージョンは3.8だったのだが。。。 from Crypto.Cipher import PKCS1_OAEP from Crypto.PublicKey import RSA message = b'1234567890987654321' key = RSA.importKey(o…

Python - Spyderを使ってみる

Spyderの使い方を簡単にまとめてみました。 Spyderとは 使い方 起動 画面構成 日本語化 操作 Pythonコード実行方法 ブレークポイント Spyderとは Python分析向けのIDE Anacondaと同梱 Home — Spyder IDE 使い方 起動 Anacondaに同梱されているので、以下のよ…