ファイルのアップロード(python)とダウンロード(php)

ファイルをサーバにアップロードする機会があり、その備忘録です。 サーバ上で動作する画像の受け取りプログラムはphpで作成しました。セキュリティ等には十分にお気をつけください。 upload.php < ? ? > p $ $ $ i } m h r p d f o p o a i v o t r ( e t h n ! m _ a f k u = = m i d p e l i l " $ e r o . _ = _ ( a / P e $ d " O d x d e ; S i i i d T r s r _ [ n t n f / " a s a i 適 p m ( m l 宜 a e $ e e 変 t ( d , ( 更 h $ i $ し " p r 0 _ て ] a n 7 F く ; t a 5 I だ h m 5 L さ ) e , E い ; ) S 。 ) t [ r ' { u m e e ) d ; i a ' ] [ ' t m p _ n a m e ' ] , $ r o o t . $ p a t h ) ; ファイルをpostでアップロードするプログラムはpythonで作成しました。ローカルの画像ファイルと、出力先のパスをpostしています。 ...

2022年6月3日 · 3 分 · Nakamura

python-docxを用いたMicrosoft Wordファイルの作成:テンプレート、int2kanjiの利用など

概要 以下のように表形式で管理している情報を、Microsoft Wordの縦書きフォーマットに変換する機会がありましたので、その備忘録です。 変換前 研究課題名 課題番号 直接経費 持続性と利活用性を考慮したデジタルアーカイブシステム構築手法の開発 21K18014 2600000 変換後 指定されたテンプレートの利用や、「数字 <-> 漢数字 の相互変換ライブラリ 「Kanjize」」を利用しています。 python-docxを用いたMicrosoft Wordファイルの作成 まず、以下のようなMicrosoft Wordのテンプレートファイルを作成します。指定されたレイアウトを使用しつつ、値を変更したい部分に{<変数名>}を指定します。 そして、上記のテンプレートで使用した変数名に対応したjsonファイルなどを作成します。 { } " " " " " " " " d i p p p p r r i n e e r r e e r d r r i o s s e i i i n j e e c r o o c e a a t e d d i c r r _ c _ _ p t c c c t e s a _ h h o _ n t l n _ _ s c d a _ u c t t o " r i m a i " s : t n b t t : t " v e e l " " : e r g e " : 二 s " o " 二 〇 " t : r : 百 " 二 二 i y 六 七 三 〇 g " " " 十 十 " 二 a 二 : 持 万 八 , 一 t 一 続 " 万 " o K " 性 , " , r 一 若 と , " 八 手 利 : 〇 研 活 一 究 用 " 四 " 性 中 " , を 村 , 考 慮 覚 し " た , デ ジ タ ル ア ー カ イ ブ シ ス テ ム 構 築 手 法 の 開 発 " そして、以下のようなpythonスクリプトを実行することにより、指定されたフォーマットに基づくMicrosoft Wordファイルを作成することができます。 ...

2022年5月31日 · 4 分 · Nakamura

Google Colabを用いたNDLOCRの実行にかかる時間について

先日、以下の記事を執筆しました。 今回は、Google Colabを用いたNDLOCRの実行にかかる時間について、かんたんな調査を行なったので、その結果をまとめます。 設定 GPUは以下です。 F r = = i N G F = N P = V P a = / r G = N A I U n = 0 A o P = o p D = c U = r I = e = r A N T = T s = u 2 - a e = e 3 s = n 9 S m m = s 5 e G I = n M e p = l C s I D = i 0 I = a : = n 6 = = g : 4 P = V = 2 6 e = 1 C I = p 6 0 r = 0 P I D = r : . f = 0 0 = o 2 3 = - = c 9 2 = S = e . P P = X = s 2 0 e w = M = s 0 3 r r = 2 2 = e 2 s : = . 3 = s 2 i U = . W = s s = . P = f t a = / I = o D e g = D = u r n e = O 3 = n i c / = f 0 = d v e C = f 0 = e - a = W T = r M p = y = p = V = e = e B = 0 = r u = 0 = s s = 0 = i - = 0 P = o I = 0 r = n d = 0 0 o = : = 0 M c = = 0 i e = 4 M = : B s = 6 e = 0 s = 0 m = 0 / = . o = : n = 3 r = 0 1 a = 2 y = 4 6 m = . D - = . 1 e = 0 i U = 0 6 = 3 s s = 0 = p a = O M = . g = f i = A e = f B = = = C = U = = D V G = = A o P = = l U = = V a - = = e t U = = r i t = 0 = s l i = % = i e l = = o = = n U = = : n C = G U = c o = P s = 1 o m = U a = 1 r p = D g = . r u M = e M e = 2 . t I = f e = e G = a m = E = u N o = C M M = l / r = C . . = 0 t A y = = = 以下の画像を用いました。サイズは5000 x 3415 px で、 1.1 MB でした。 ...

2022年4月29日 · 4 分 · Nakamura

Google Colabを用いたジャパンサーチRDFストアに対するSPARQLの実行例

Google Colabを用いたジャパンサーチRDFストアに対するSPARQLの実行例を示すノートブックを作成しました。Pythonを用いたRDFストア利用時の参考になりましたら幸いです。 https://colab.research.google.com/github/nakamura196/ndl_ocr/blob/main/ジャパンサーチのRDFストアを対象したSPARQLチュートリアル.ipynb 他にも以下のような参考サイト・チュートリアルがあります。 https://www.kanzaki.com/works/ld/jpsearch/ https://lab.ndl.go.jp/data_set/tutorial/

2022年4月29日 · 1 分 · Nakamura

AWS Lambdaを用いた物体検出API(Flask + yolov5)の構築

概要 AWS Lambdaを用いた物体検出API(Flask + yolov5)の構築を行います。機械学習の推論モデルをAWS Lambdaを用いて構築することにより、コストの軽減を目指します。 以下の記事を参考にさせていただいています。 https://zenn.dev/gokauz/articles/72e543796a6423 リポジトリの内容の更新や、API Gatewayからの利用方法の追記などを行なっています。 Lambdaへの関数登録 以下のGitHubリポジトリをクローンします。 g i t c l o n e h t t p s : / / g i t h u b . c o m / l d a s j p 8 / y o l o v 5 - l a m b d a . g i t ローカルで実行する 次に、venvを用いて仮想環境を作成して、モジュールをインストールします。 ...

2022年3月24日 · 3 分 · Nakamura

【Google Colab】はてなブログのAtomPub APIを用いた記事一覧の取得

はてなブログのAtomPub APIを用いた記事一覧の取得用サンプルプログラムを作成しました。以下のGoogle Colabでお試しいただけます。 https://colab.research.google.com/drive/15z0Iime9Bbma7HW09__Fq_fRkcWP6nyS?usp=sharing 上記のプログラム実行後、以下に示すようなExcelファイルがダウンロードされます。 https://docs.google.com/spreadsheets/d/14myDqZTxocwOT0Mw3ZzKLO81E6r15R-49oUh2dG9Rbo/edit?usp=sharing 「metadata」シートにブログの情報、「items」シートに記事の一覧が格納されます。 他のアプリケーションとの接続のため、「metadata」シートのA列や見出し行、「items」シートの見出し行の表記などでわかりにくい点がありますが、はてなブログのAtomPub APIの利用にあたり、参考になりましたら幸いです。

2022年3月22日 · 1 分 · Nakamura