2017/10/28

CSVファイルを読み込んでlist型と辞書型に格納 - Python


  • Goal
    PythonでCSVファイルを読み込んで、List型と辞書型、集合型に格納する
  • How
    CSVモジュールのreaderメソッドを使う

    マスターファイルを作る。 テキストファイル menu.csv
     
    UDON001,500
    UDON0012,700
    SUSHI0123,1200
    TONKATSU001,2000
    RAMEN10,1000

  • Result
    (pytest2.7.13)~/pytest$ python CSVtoListDic.py 
    List
    [['UDON001', '500'], ['UDON0012', '700'], ['SUSHI0123', '1200'], ['TONKATSU001', '2000'], ['RAMEN10', '1000']]
    5
    Dic
    {'TONKATSU001': '2000', 'UDON001': '500', 'RAMEN10': '1000', 'UDON0012': '700', 'SUSHI0123': '1200'}
    5
    Set
    set(['TONKATSU001', 'UDON001', 'SUSHI0123', 'UDON0012', 'RAMEN10'])

    5

2017/10/22

GCP: Google App Engineにアプリーケーションをデプロイする方法 ー GAE/Py


  • 備忘メモ
    Google App Engine にデプロイするコマンド
    EC2上のUbuntu16.04からデプロイ
    APP.yamlファイルがあるディレクトリで実行すること


(pytest2.7.13) ubuntu@ip-10-0-0-253:~/pytest$ appcfg.py update --noauth_local_webserver -A "projectid" -V "version" .←Main.pyがあるディレクトリで流しているので。。。
  • 結果 --- これは何も更新されてないけど

    10:43 AM Application: (was: None); version:  (was: None)
    10:43 AM Host: appengine.google.com
    10:43 AM Starting update of app: , version: 
    10:43 AM Getting current resource limits.
    10:43 AM Scanning files on local disk.
    10:43 AM Scanned 500 files.
    10:43 AM Cloning 896 application files.
    10:43 AM Compilation starting.
    10:43 AM Compilation completed.
    10:43 AM Starting deployment.
    10:43 AM Checking if deployment succeeded.
    10:43 AM Deployment successful.
    10:43 AM Checking if updated app version is serving.
    10:43 AM Completed update of app: , version:

テキストファイルをRDBのテーブル(イメージは、品番マスターとか)風に使う - Python


  • Goal
    ChatBotが受信したテキストメッセージと、テキストファイル(CSV)をマッチングさせる。テキストファイルのままで、品番マスタの用に使って参照させる。
  • 準備
    マスターファイルを作る
    テキストファイル menu.csv
     
    UDON001,500
    UDON0012,700
    SUSHI0123,1200
    TONKATSU001,2000
    RAMEN10,1000
  • How
    1. unicodedata を使って、ひらがな・カタカナ・漢字判定と、全角・半角変換する
    2. lineでテキストファイルから1行取得して、比較を繰り返す
    3. 先頭からで一致したら抜き出す

  • 結果

    (pytest2.7.13) ubuntu@ip-10-0-0-253:~/pytest$ python testmatch.py
    UDON001,500
  • Thanks!!
    以下、参考にさせて頂きました。
    http://minus9d.hatenablog.com/entry/2015/07/16/231608


2017/02/17

文字列から日付へ変換 - SQL Server

  • Goal
    日付と時間の別々の文字列を、Datetime型に変換する。
    ”曜日, 月 日, 年” と ”時間:分:秒 AM/PM” をDatetime型に変換

    EX)
    As is
             Wednesday, February 15, 2017 と 1:25:22 PM
    To be
            2017-02-15 13:25:22.000

    文字列分解して無理矢理変換している。。。
    良い方法があったら教えて欲しい。
     
  • Source


2017/02/09

awk サンプル ファイル分割など

  • サンプル事例
    以下のファイルの文字列コントロールのサンプル
    1列目(名前)2列目(出身地)3列目(誕生日)4列目(男女 John Osaka 12/05/2000 M Mark Tokyo 12/10/2001 M Emily Akita 01/24/1998 W Sam Osaka 10/01/1988 M Toshi Osaka 11/01/2000 M 1.1列目 だけ抜き出し 2.if 条件付き分岐 大阪出身だったら名前だけ、それ以外は出身地を名前を表示 3.ファイルの分割 $4(男女)の項目をファイル名とし、出力ファイルを分割
  • Source

2017/02/08

XMLファイルからテーブルへのINSERT

  • Goal

    XMLファイルからテーブルの要素を抜き出して、INSERTしたい。
    SQLServer バージョン

  • How

    xqueryを使って実施。



2017/01/31

FTPで送られてくるXMLファイルをSQLServerに自動的にロードする

  • Goal

    FTPで送られてくるXMLファイルを自動的にSQLServerのテーブルにロードする。
    SQLServer上にテーブル名Logxmlを作成し、受信したXMLを1カラムにINSERTする。LogxmlテーブルのSQLは以下の通り。この後、必要に応じてXML形式のカラムからトリガーやTSQLなどで各要素・カラムの切り出しをする。



  • How

    PowerShellで実施。
    ターゲットのフォルダから対象のファイル名を取得して、Bulkインサートを行う。
    スクリプトは常駐させておいて、60秒間隔で起動。
    (本当はWMIでやりたいので、後日トライ予定)