Skip to content

Instantly share code, notes, and snippets.

View shikajiro's full-sized avatar

shikajiro shikajiro

View GitHub Profile
@shikajiro
shikajiro / pepup.py
Created February 7, 2024 07:41
pepupからダウンロードした医療費のxmlをcsvに変換するスクリプト
import xml.etree.ElementTree as ET
import csv
tree = ET.parse('pepup_download.xml')
root = tree.getroot()
csv_data = []
for child in root:
if child.tag != '{http://xml.e-tax.nta.go.jp/XSD/kyotsu}WBD00000':
continue
@shikajiro
shikajiro / PerformanceMeasure.kt
Last active July 4, 2021 15:18
処理の実行時間を計測してログに出力する便利ロジック
/**
* 処理の実行時間を計測してログに出力する便利ロジック
* buildConfigFieldのPERFORMANCEフラグがtrueのとき、かつ、デバッグ時のみ計測される
呼び出しサンプル:
```
val result: String
measure("copy time") {
// 計測したい処理
result = execute()
@shikajiro
shikajiro / main.py
Created December 3, 2019 16:40
RaspberryPi から画像をサーバーに送るサンプル実装
import requests
import time
import logging
import arrow
import random
logging.basicConfig(level=logging.DEBUG)
URL = "http://xxx.xxx.xxx.xxx:5000/"
@shikajiro
shikajiro / RxJava2LifecycleObserver.kt
Last active December 27, 2017 23:41
Implementation to make it easier to manage Composition of RxJava 2 using LifecycleObserver of Android Architecture Component and Delegate of Kotlin
/* Interface is necessary for Delegate */
interface RxJava2LifecycleDelegate {
fun Disposable.autoDispose(): Disposable
fun Lifecycle.setupRxJava2Observer(func: () -> Unit)
}
/* Class for Delegate implementing LifecycleObserver */
class RxJava2LifecycleDelegateImpl : RxJava2LifecycleDelegate {
private var composite = CompositeDisposable()
@shikajiro
shikajiro / HomeFragment.kt
Last active September 27, 2017 12:05
Toothpickを使ったActivity, Fragment, ViewModelでの基本的な流れ
class HomeFragment : Fragment() {
private lateinit var scope: Scope
private lateinit var vm: HomeViewModel
@Inject lateinit var dialogDelegation: DialogDelegation
override fun onCreate(savedInstanceState: Bundle?) {
scope = Toothpick.openScopes(activity.application, activity, this)
scope.installModules(FragmentModule(this))
@shikajiro
shikajiro / autoshell
Last active April 29, 2017 12:04
bashでディレクトリ移動した時に `.start.sh` が存在したらそれを実行する。.bashrcに追加する
autoshell(){
[[ -n $AUTOLS_DIR ]] && [[ $AUTOLS_DIR != $PWD ]] && [ -e ./.start.sh ] && ./.start.sh
AUTOLS_DIR="${PWD}"
}
PROMPT_COMMAND="autoshell"
@shikajiro
shikajiro / fb_image_download_selenium.py
Created April 25, 2017 15:01
facebookのグループの写真全てを順番にダウンロードしていく
# coding=utf-8
import time
from selenium import webdriver
if __name__ == '__main__':
try:
browser = webdriver.Chrome('./chromedriver')
@shikajiro
shikajiro / rename_png.sh
Created March 22, 2017 01:30
iOSの@2xが書かれた画像から@2xを消すだけ
rename 's/\@2x//' *
@shikajiro
shikajiro / fabfile.py
Last active November 28, 2016 10:14
Script to perform the build of Android on another machine
# Script Name : fabfile.py
# Author : shikajiro
# Created : 2016-11-03
# Last Modified : 2016-11-21
# Version : 1.1.0
# Modifications :
# Description :
# Script to perform the build of Android on another machine
# By performing such a build of severely time on another machine,
# it is possible to ensure the CPU resources of the development machine,
@shikajiro
shikajiro / backlog2gitlab.py
Created September 9, 2016 00:29
backlogが出力したcsvファイルをgitlabに登録するスクリプト
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
backlogが出力したcsvファイルをgitlabに登録するスクリプト
user_id は予め登録しておく必要があります。
users に追記してください。
gitlabのtokenは暫定で特定ユーザーのものを利用しています。