Why it doesn't work?

作業のメモ、記録をブログに残しています。

Python3検証済み

Python プロセスID (pid) の取得

pythonでは、osモジュールのgetpidメソッドで、プロセスIDが取得できます。

Python パワポ資料を自動に生成する

報告書は基本パワポ(PowerPoint)です。その是非はおいておくとして、報告のフォーマットはある程度決まっているので、Pythonで自動に生成できないかと考えました。

Python zipファイルの圧縮と解凍

Python標準ライブラリのzipfileモジュールを使用すると、ファイルをZIP形式で圧縮、解凍することができます。zipfileは、標準ライブラリなので追加のインストールは不要です。

Python requestsで SSLError(SSLCertVerificationError)が発生する

requestsであるサイトにアクセスすると以下のようなエラーが発生しました。 HTTPSConnectionPool(host='www.xxx.jp', port=443): Max retries exceeded with url: /rss/feed.rss (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY…

Python datetime.strptimeで"unconverted data remains:"が発生

スクレイピングをしていると様々な日付のフォーマットが見受けられます。基本的には、以下のように取得した日付の文字列をdatetimeオブジェクトに変換してから、比較したり、足したり引いたりしています。 import datetime t = 'Mon, 02 Dec 2019 00:00:00 +…

Python 2系の処理を3系に更新中

いまさらの話ですが、Python 2系のサポートが2020年1月1日に終了します。 www.python.org このブログでも、仕事の都合上2系の処理を記載した記事をが存在します。さすがにサポート終了するものをそのまま放置しておくのはいかがなものか、ということをで2系…

Python 辞書(dict)データへの要素を追加、連結および削除

いまさらですが、Pythonの辞書(dict)データの追加、連結、削除について簡単にまとめてみました。 仕様については、こちらを確認して下さい。 docs.python.org

Python JSONデータ読み込み時にエラーが発生する (Expecting property name enclosed in double quotes)

以下のようなプログラムを実行すると、エラーメッセージが表示されました。 import json with open('test.json', 'r') as f: l = json.load(f) for d in l: print(d) json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: lin…

Python python-docxでWordファイルを操作する - 既存ファイルの読み込みと編集

Python python-docxでWordファイルを操作する - 新規作成 - Why it doesn't work? Python python-docxでWordファイルを操作する - 画像を挿入する - Why it doesn't work? Python python-docxでWordファイルを操作する - 改ページの追加 - Why it doesn't wo…

Python 可変長引数(タプル)を使ってみる

Pythonで可変長引数の設定の仕方を簡単に調べてみました。 可変長引数とは、関数やメソッドやマクロの引数が固定ではなく、その名が示すように、任意の個数を指定できる引数のことです。

Python バイナリモードでファイルを読み込む、およびEOFの検出方法

Python ファイルを読み込む - Why it doesn't work? Python ファイルを'rU' (universal newlines)モードで読み込む - Why it doesn't work?久しぶりのPython。紆余曲折あってバイナリモードでのファイルを読み込みを試みてる。

Python 画像のダウンロード

ブラウザで表示させた画像を、右クリックで保存するという煩わしい作業があるため、HTTPライブラリの一つであるrequestsモジュールを使用して簡単に画像をダウンロードするプログラムを作成しました。 requestsモジュールのインストール pipもしくはpip3を実…

Python コメントアウト

一行コメント # Output "Hello World!" print("Hello world!") これを実行すると、#以降は行の終わりまで無視され、二行目のprint文だけが実行されます。 Hello world! 複数行コメント 複数行をコメントアウトしたい場合には、「'''」シングルクォーテーショ…

Python 現在時刻の取得、フォーマットの変換

まずは、datetimeオブジェクトをインポートします。 >>> from datetime import datetime 現在時刻の取得 datetime.today()で現在のローカル時刻が取得できます。 >>> datetime.today() datetime.datetime(2019, 11, 26, 9, 24, 17, 284989) datetime.now()も…

Python ディレクトリ(フォルダ)を作成する

pythonを使用してディレクトリを作成するには、osモジュールのmkdirを使用します。

Python ファイル、ディレクトリ(フォルダ)を削除する

ファイルを削除する >>> import os >>> os.remove(filepath) ディレクトリを削除する >>> import os >>> os.rmdir(dirpath) ただし、これはディレクトリが空でないとエラーが発生する。以下は、Windows上で実行した時に発生するエラー。 WindowsError: [Erro…

Python print文まとめ

デバッグなどで最も使用されるであろうprint文についてまとめてみました。print文は、バージョン3以降では、関数として扱われ機能も大きく変更されています。 まずは2.7をベースに動作を確認してみたいと思います。 標準的な文字列の出力 >>> print ('Hello…

Python ファイルを'rU' (universal newlines)モードで読み込む

pythonでGeoJSONファイルを出力する で作成したツールで、テストをしていてあることに気がつきました。出力されたデータの出力数が異常に少ない時があるのです。 オリジナルのログのGPSデータを10とすると出力されたGeoJSONデータは1ないし2程度です。 for l…

Python XMLを解析(Parse)する

以下のようなXMLファイルをサンプルとして使用します。ファイル名は”stations.xml”とします。 <data> <station name="Tokyo Station"> <coordinates> <lat>35.681442</lat> <lng>139.767098</lng> </coordinates> </station> <station name="Ueno Station"> <coordinates> <lat>35.712408</lat> <lng>139.776167</lng> </coordinates> </station></data>

Python timeモジュールを使用したEpoch(エポック)の変換

timeモジュールを使用して現在時刻とエポックの変換 import time # 現地の現在時刻の取得 now = time.localtime() print(now) # => time.struct_time(tm_year=2019, tm_mon=11, tm_mday=22, tm_hour=10, tm_min=7, tm_sec=25, tm_wday=4, tm_yday=326, tm_is…

Python Shift-JISをUTF-8に変換する

Google Maps API関連ではないです。 出力されたログを漁っていると、いまだにShift-JISを使用している人達がいます。 エディタを調整するのも面倒なので、pythonで文字コードを変換してしまうことにしました。 1. Python 2系 with open('sjis_file.txt') as …

PythonでKMLファイルを出力する

「KMLか? GeoJsonか?」という記事でも書いていましたが、最初はKMLフォーマットを使用することも検討していました。せっかくなので、KMLも出力出来るソースも作成してみました。pythonでは、simplekmlというパッケージが提供されており、簡単にKMLフォーマ…

Python GeoJSONファイルを出力する

pythonでファイルを読み込む python splitで文字列を分割する python パスからファイル名を取得する pythonでGeoJSONデータを生成する をまとめたファイルをアップしました。 create_geojson_p.py ざっと以下のような機能になります。 引数として渡されたフ…

Python GeoJSONデータを生成する

GeoJSONデータは、フォーマット自体は通常のJSONと何ら違いはありませんので、collectionsライブラリを利用してデータを生成することも出来ますが、GeoJSON用のライブラリがリリースされているので、そちらを利用してみます。 1. geojsonライブラリのインス…

Python パスからファイル名を取得する

import os file_path = "/your/file/host/work/gps.log" path = os.path.basename(file_path) print (path) 以下の通りファイル名を取得出来ます。 gps.log splitextを使用して、拡張子と拡張子を含まないパスを取得することも出来ます。 import os file_pat…

Python splitで文字列を分割する

gps.log 1 2018/02/03 10:31:23 gpsData{Lat:35.584047, Long:139.665936, Alt:14.000000} 昨日のデータから文字列を分割して必要なタイムスタンプだけを抜き出します。 with open("gps.log", "r") as f: for line in f: phrases = line.split() for word in…

Python ファイルを読み込む

pythonを利用してログファイルを読み込み、GeoJSONデータをエクスポートします。 まずは、ファイルの読み込みから。ちなみに、利用するバージョンは2.7です。 (2019/11/20) Python 3系に対応データは以下様なフォーマットを想定しています。あくまでサンプル…