2018-01-01から1年間の記事一覧

pandas でcould not convert string to float: というエラー表示される

dtypeをstrに指定してやればいい pd.read_csv(hoge.csv, index_col=0, dtype=str)

RealmListのaddChangeListenerの仕組み

英語が読めない上にあんまり情報がなくて詰まっていたので自分用メモ。 realmList.addChangeListener { newRealmList, changeSet -> } みたいにするとchangeSetで挿入と削除した要素番号がとれる。 挿入の場合はchangeSet.insertions 削除の場合は changeSet…

IntelliJで作業効率の計測

コードを書いている時間の計測はWakaTime ステップ数の計測はStatistic どちらもプラグインがあるので自動で計測してくれる。 本当は日別に何Byteコードを書いたかが記録できるといいんだけど、githubとかと連携させればいいんだろうか。

npmでnode-sassがインストールできない

sudo npm install sass-loader node-sass --save-dev でやるとエラーが出た。 rootになってからもう一度やり直すとうまくいった。

NodeJsのプラグインをIntelliJに入れる

IntelliJのコミュニティエディションではNodeJsのプラグインが使えないため、有料版にする必要がある。

NodeJsを入れたらRead Only で読み込み専用になる

intelliJで編集できなくて困ったので。 stackoverflow.com

seleniumで要素が表示されているかどうか

要素がvisibleじゃないときにclickしてエラーになる場合など。 element.is_displayed() で取れる。

seleniumで要素が表示されているかどうか

element.is_displayed() で取れる。

cronで特定の時間を除いて実行

8時から2時まで動かしたい場合など Crontabで特定の時間を除いて毎時実行 #Pistatium

airflowでchromeが動かないとき

エラーログ "DevToolsActivePort file doesn't exist” 解決策 options.addArguments("--no-sandbox"); stackoverflow.com

ubuntu18でpipが使えなかった。

解決策 dhonuk.com

Seleniumでウィンドウの端までスクロールする

seleniumでページ全体のスクリーンショットを撮る場合はこっちのほうがいいです。 nonenull.hatenablog.com PhantomJSが現役だった頃は簡単に全画面スクリーンショットが撮れたんですが、FirefoxやChromeだと難しい。 そこで、全画面スクリーンショットの代…

amazonのアフィリエイトコードからasinコードを抜き出す

text = """ """ hoge = text.split("asins=")[-1] asin_code = hoge.split("&bc1=")[0] print(asin_code)

UbuntuのGUI環境が壊れた

目次 症状 直し方 症状 UbuntuのGUI環境が壊れました。 具体的に言うと、起動直後にマウスカーソルは動くんですが、他がフリーズする状態です。 幸いキーボード・ショートカットは効いたので、シェルを立ち上げて作業しました。 直し方 sudo dpkg-reconfigur…

Android StudioのADB IDEAがかなり便利なのでご紹介

簡単に言うと、データを消したり再起動したりが便利にできるプラグインです。 詳細は以下に詳しいです。 AndroidStudio からアプリを停止したりデータを消したりアンインストールできるプラグイン「ADB Idea」

Seleniumでボタンをクリックするときは、ボタンの文字列を取得するのがいい

Seleniumでボタンやチェックボックスをクリックしたい時ですが、CSSセレクター等で指定してやるよりも、ボタンの文字列を指定してやるほうがいいです。 理由 動的にHTMLが生成される場合など、セレクターは構造の変化に弱い うまく動かなかった時に文字列の…

seleniumでselectボックスじゃないけどリスト形式になっていて、タイトルで選択状態を変えたいとき

みたいなややこしい場合があります。 セレクトボックスなら、Selectクラスを使うのが楽です。 そうじゃない場合、親の要素を取ってきて、子要素をリスト化するのがいいです。 ざっくりこんな感じ parent = driver.find_element("element") elements_list = p…

seleniumでselectボックスじゃないけどリスト形式になっていて、タイトルで選択状態を変えたいとき

みたいなややこしい場合があります。 セレクトボックスなら、Selectクラスを使うのが楽です。 そうじゃない場合、親の要素を取ってきて、子要素をリスト化するのがいいです。 ざっくりこんな感じ parent = driver.find_element("element") elements_list = p…

音声ファイルを再生する

MediaPlayerを使うとうまくいった。 1. res配下にrawファイルを作る 2. mediaplayerを使う 繰り返し再生する場合はsetOnCompletionListener を使う必要がありそう。 setOnCompletionListenerと、setOnErrorListenerの実装の仕方。java、android用 ( パソコン…

seleniumで要素までスクロールする処理

qiita.com こちらがとても使い勝手が良かったのでおすすめです。

pythonでディレクトリが無ければつくる

import os if not os.path.exists(path_to_dir): os.mkdirs(path_to_dir) os._exists というメソッドもあって、少し詰まっていた。

SharedPreferencesにSetを保存する処理で詰まった

解決策 https://qiita.com/yasumodev/items/016b40b3c817cfec75a4 Kotprefという便利なSharedPreferencesのライブラリがあったんですが、StringSetに値を入れて、Killすると入れた値が保存されない現象に遭遇した。 これは自分の使い方が悪かったのかもしれ…

Activityがバックグラウンドに入るタイミングでonDestoryが呼ばれる

nonenull.hatenablog.com という現象があった。 1つのActivityだけがある画面ではActivityとApplicationの生存期間が等しいんだと思っていたけど、どうやら違うみたい。 バックグラウンドに入るときに、バックキーを押したらonDestroyが呼ばれる。 ホームボ…

RxJava2のCompositeDisposableのdisposeとclearの使い分け

背景 ViewModelをDaggerでInjectしたときに、ActivityのonDestoryでCompositeDisposableをdispose()していたら不具合が出た。 というのも、ActivityがonDestoryされてもViewModelのインスタンスはAppilcationのライフサイクルで生成と破棄されるので、ViewMo…

Androidアプリ公開用のリソース作成サービス

いぜんはInkscapeで作っていたけど、Webサービスを使ったほうが簡単だった。 用意するリソース アプリアイコン ストア用ヘッダー画像 スクリーンショット アプリアイコン Android Asset Studio - Launcher icon generator ヘッダー画像 Android Feature Grap…

Admobが表示されない場合

Admobのテストバナーは表示されるが、実際のバナーが表示されない 1. 支払い設定を済ませていない 2. テストデバイスの設定をしていない 支払い設定を済ませていない stackoverflow.com テストデバイスの設定をしていない android-note.open-memo.net

droidkaigi2018公式アプリをビルドする

cloneしてbuildしようとしてもうまくいかなくて詰まってたので。 settings.gradleのrepositoriesに↓を追加する。 rootProject.buildFileName = 'build.gradle.kts' qiita.com

TextViewのDatabindingでStringリソースを使う

// String <string name="name">My Name is %s</string> // レイアウト xml android:text="@{String.format(@string/name, viewModel.name.value)}"

Androidのサポートライブラリバージョンを一括で管理する

// build.gradle(Project) buildscript { ext.kotlin_version = '1.2.41' ext.supportLibVersion = '27.1.1' } // build.gradle(Module) implementation "com.android.support:appcompat-v7:$supportLibVersion" implementation "com.android.support:design…

Androidのパッケージ名を変更する方法

1. パッケージをリネームする 2. app の gradle の applicationId を変更する 参考: dev.classmethod.jp