pythonからffprobeを利用してmp4などの動画ファイルから作成日時を読み出す。データは協定世界時(UTC)なので日本標準時(JST)への変換も必要になる。create_timeデータが含まれないものはファイル名のUNIX時間、それもだめならファイルのタイムスタンプを使う。
Exifの撮影日時データがないファイルでも、1608975591739.jpgなどのファイル名から日時を取り出せます。最悪でもタイムスタンプから撮影日時を(無理なら保存日時を)Exifに書き込んで写真の整理に役立てようというお話。Debian11上のpython3を端末上で使う。Pythonのバージョンは3.9.2 pythonの使用例として、bashの変数展開した引数の使用、datatimeオブジェクト、ファイルのタイムスタンプの利用、Exifデータの読み書き、正規表現、pathlibによるファイルの読み込み、argparseによる引数の管理 などに触れている。
日本語ファイル名のアーカイブは展開できなかったり文字化けしたりすることがある。unarでうまく展開できる。環境はDebianのGNOMEデスクトップ。jlha-utilsも使える。
「08.アクセス解析(awffull)の導入」でDebian9機に入れたawffullの移設である。レンタルサーバーが提供している毎日のアクセスログを1,2週に一度ダウンロードして、ローカルなPCのawffullで月ごとの記録を取ろうといういうもの。
sedを使って文字列置換と行の追加を全部のファイルにワンライナーでおこなった記録
スクリーンショットの名前から日時を取り出し短縮してファイル名を変更する。また、タイムスタンプも変更する。awkを使ってbashスクリプトを作り、それを実行することでたくさんのファイルを一度に変更することができる。
TeXやMathJaxで\emptyset というコマンドでゼロに斜線の記号になる。Unicodeでゼロに斜線はU+2205の異体字(SVS)になっていて、本来の字形は○に斜線。TeXやMathJaxでこれを出すには\varnothing というコマンドを使う。調査の過程でギリシャ文字ファイの2つの小文字がUnicodeでは両方登録されているのに対してJISでは一つだけであり、例示字形が合っていないという問題を発見。ゼロの異体字にも触れています。
Debian 10.0(buster)のApache2で、SSL(https)を動かした。インストール時に自動的に作られているSSL証明書を使うとすんなり動いた。(2022-01-22)
convertとexiftranの併用で一括処理する手順を改めて書いています。加えてOrientationやThumbnailを正しく持っている画像を exiftran, convert, GIMP がどの様に取り扱うかを検証します。(2021-07-11)
convertではトリミングだけにしてexiftranで回転するのがよい。詳しく調べる道具はexiv2がよい。(2021-07-05)
ImageMagickのconvertを使って多数の画像ファイルをトリミング、回転する方法を紹介。加えて変更前の残ったexif情報を頼りにする機器があって取り除かなければならなかったという話。(2021-06-23)
Juliaのバージョンによってdiagm()関数の動きが異なるというお話。(2021-05-30)
たまたま Julia にひっかかったので、ちょっとメモを作っておく。行列の計算の補助に使いたい。(2021-05-22)
lualatexを使うのにtexliveだけでは不足なものを探してインストール。apt searchを使って探す。(2021-05-01)
MathJaxとTeXの違いを意識して最小限かつリーズナブルな移植を可能にする方針で、作業中に出会った課題ごとに解説。(2021-04-30)
Texの数式記述方法をほとんどそのままhtmlに持ってくることができるMathJaxも試してみる。その第一歩。(2020-11-18)
再び、Google Search Console Team からメールが来た。コンテンツの幅が画面の幅を超えている等というが、かなり前から掲載しているページ。問題がないのでそのまま「修正を検証」させると、後日修正されたと報告された。(2020-10-25)
端末でのコマンド操作。qpdfで連結と回転・分割は満足できる操作性。poppler-utilsパッケージのpdfimages(-list), pdfinfo, も知っていると便利かも。(2020-10-16)
第一歩と同じpdfを作成してみる。あまり変わっていない。uplatex か lualatex かという選択肢も同じ。(2020-10-14)
Debian10(buster)にtexliveをインストールして何が入ったかを調べる。(2020-06-28)
Google Search Console Team からメールが来た。コンテンツの幅が画面の幅を超えているというのだが、もう一度チェックさせると、モバイルフレンドリーだと言う。(2020-06-12)
PILの_getexif, exifread, piexif, GExiv2 による読み出しのまとめ(2020-06-12)
gexiv2を用いたexifデータの抽出方法。Rationalを使った加工方法。 exifdataの変更と書き戻しについては、convertに任せる。(2020-05-22)
ImageMagickのconvertを使って加工したファイルではMakerNoteが狂ってしまいまうことが判明。Eye of GNOME という GNOME デスクトップの公式画像ビューアーでは問題がないので、多分exifreadの問題と考えられる。(2020-05-12)
exifread で取り出したタグの値から.valuesで得られるものは、str(文字列)またはlistです。 listの場合、大抵の場合要素は1つだけで、要素の型はintかexifread.utils.Ratioです。Ratioはfractionsまたはsympy.Rationalに似た仕組みで有理数(分数)を保持する仕組みです。(2020-04-20)
PIL.ExifTags か exifread で取り出すことができる。それぞれ全部のタグを抽出する方法と特定の値を得る方法。(2020-04-18)
入力した見出しと記事を画面に付け加えて行くPHPプログラムを作ります。(2020-01-23)
各ページに置くコマンド(ini_set()など)を使ってエラー表示を一時的に出すようにし、また、ログの出力先を変更します。(2020-01-16)
Wi-Fiルータなどで構成されるローカルネット内でIPアドレスでアクセスし、ドキュメントルートのhtmlファイルを表示するまでに必要なこと。ドキュメントルートの変更も説明する。(2020-01-15)
Wi-Fiルータなどで構成されるローカルネット内で、ウェブサーバーへ他のホストからドメイン名によるアクセスと、VirtualHostの追加をします(2020-01-14)
Wi-Fiルータなどで構成されるローカルネット内でIPアドレスでアクセスし、ドキュメントルートのhtmlファイルを表示するまでに必要なこと。ドキュメントルートの変更も説明する。(2020-01-13)
chcpでUTF-8対応という話だったが、どうもおかしい。仕様書も見つけられないし振る舞いもあやしい。それに比べるとLinuxの仮想端末は立派になっていると思う。(2019-10-30)
1分ごとに撮影した写真からffmpegで動画をつくりました。小さく丸まった雄しべが広がって扇状になるのは感動的です。(2019-10-18)
ダイアログでプリンタを選択する方法は3つ。(2019-7-30)
大きい方のディスプレイを使うようにプログラムしたい。(2019-6-21)
入門書であまり解説されていないgetSupportedAttributeValues()メソッド。これを使えばMediaSizeに登録されているのに、MediaSizeNameにない用紙を PrintRequestAttributeSetに指定することができるようになる。加えてPrintServiceの使えそうなメソッドについていろいろ試してみる。(2019-5-31)
タイトルを変更しました。旧題名は「PrintRequestAttributeSetにMediaSize指定を追加する?」です。Javaの本家の仕様解説文で、MediaSizeNameと書くべき所、MediaSizeと間違っていたという話です。一部はまだ間違ったままです。(2019-5-21)
Windows機は買わない方針と妥協して中古を購入(2019-4-13)
Thunderbirdの警告の理由(2019-04-01)
awffullでのアクセス解析。GeoIPの利用やHideReferrerでの参照元の調整をする。(2019-02-17)
レンタルサーバーで提供されているアクセス解析がとても使いにくい。 そこで、別に提供されているナマのログをダウンロードして、webalizer後継のawffullで利用統計をlocalで取ることにした。(2019-02-14)
Debian9(Strech)でaptでインストールして日本語の文章をpdfにしてみる。uplatexかlualatexコマンドを使うのが良さそうというところまで。(2018-12-19)
OSはDebian9(Strech)64bit、CUPS 2.2.1、プリンタはCanon MP493、javac 1.8.0_181 で用紙の選択がうまくできない問題を回避する方法(2018-12-10)
幅を小さくすると文字がはみ出るようになっていた。background-image: none;で改善するが、角丸はなくなる。そのうち直るとは思うが。(2018-11-08)
dhcpで使っていたDebianデスクトップのIPアドレスが頻繁に変わるようになったので固定IPにした。sambaでファイルサーバーとして使うようになって必要となった次第。(2018-10-30)
2の64乗を整数で計算するのは今のプログラム言語では難なくできてしまう。(2018-09-14)
N88-BASICのプログラムを Bywater BASIC で動かすための改変例です。(2018-9-11)
いまさらBASICのプログラムを書こうと思ったわけではなくて、昔書いたN88-BASICのプログラムを読む前に動かしてみれば読む必要があるかどうかの判断が早いかとちょっと調べてみました。少ない改変で動かせるのは Bywater BASIC というのが結論。(2018-9-11)