旅好きエンジニアのメモ

旅のこと映画、統計、会計、プログラミングなど、気の向くままに語ります

2017-10-01から1ヶ月間の記事一覧

pythonでapiからデータを取得する方法 (urllib3)

はてさて、pythonでapiからデータするときみなさんはどんなライブラリを使いますでしょうか? urllib? urllib2 urllib3? ってライブラリ多いですね。 ちなみに、"urllib"は"https"でデータを取得できない場合もあります。 なので、個人的なオススメは"urllib…

djangoでpandas使うのは簡単だった

pandas使ってデータ分析しているサイトがよくあって、 私も参考にしているのですが大体csv使ってませんか? 少ないデータだったらcsvで良いと思うんですけど、 apiやスクレイピングデータ取るときってdbに突っ込みませんか? djangoのormでデータをdbにつっ…

rails2で'ruby-debug'(デバッグ)を使う時の注意

下記のgemでdebug(デバッグ)する時、だいたいgem入れて gem 'ruby-debug' 自分の止めたいところで debugger をコードの中に入れるみたいな感じで書いていると思います。 そして、サーバーの立ち上げはいつも通りで。。。 bundle exec script/server はい、最…

rails5でapiを作成する方法

apiの改修することはあれども今までapiの作成を初めからしたことなかったので 簡単に作った時のメモをしておきます。 環境 ruby 2.4.2p198 Rails 5.1.4 sqlite3(初期設定のものを使っています) アプリ作成 まず、適当にrails アプリ作りましょう。 rails new…

rails4からrails5でインデックスの貼り方が変わった?

index貼りたいけどrails5になったらadd_indexで貼れなくて戸惑いましたw rails4なら作られたテーブルに関してこんな感じ class AddIndexToTestTables < ActiveRecord::Migration def change add_index :test_tables, :name add_index :test_tables, :name2 …

pythonで配列追加の処理速度の違い

pythonで配列追加の処理速度を比べてみました。 "append"を使う方法 import time def process(): result = [] start_time = time.time() for _ in range(10000000): result.append("test") processing_time = time.time() - start_time return processing_ti…

pythonのリスト内包表記と普通のfor文どちらが早いか

リスト内包表記と普通のfor文どちらが早いかを確かめてみました。 普通のfor文 import time def process(): start_time = time.time() result = [] for i in range(30000000): result += [i] processing_time = time.time() - start_time return processing_…

pythonの標準入力で気をつける

pythonの標準入力 なんか色んな記事を見ていると、 import sys sys.stdin.read() sys.stdin.readline() sys.stdin.readlines() や rau_input() などがありますが rau_input()はpython2なので python3は下記を使いましょう。 input() それにしてもpythonの記…

djangoでjupyter notebookを使う方法

djangoでjupyter notebookを使おう pythonicでデータ分析をする方ならjupyetrを使う方は多いのではないでしょうか? ただ、web開発で何かしらのフレームワーク使っていたらjupyter使うって感じにならないですよね。。。 (自分だけかもしれないですが) しかし…

25日の移動平均線をpythonで求める方法

亀のような遅さでトレードの自動売買システムを作成しています。。。 djangoで作ろうとしているので完成が見えない。。。(フロントなくそうかな。。。bottleにしようか。。。) 今回は25日の移動平均線を求めてみました。 はい、下のコードで終わりです!!(p…

rubyで引数の初期値がある時の順番の個人的に良い方法

引数の初期値がある時の順番で困る時ってありますよね 例えば、第二引数の初期値を設定する時 def file(name="foo.jpg", mode="rb") File.open(name, mode) end こういう時、第一引数を変えずに、第二引数だけ変えて 呼び出すときは以下のようにしないといけ…

rubyの引数を初期値で配列にするってどうなの?

rubyって色々便利なものがあるんですよね、そこで引数について考察です。 例えば、引数を配列にするとか。 ①と②の例は同じことをしていますが①はスッキリしていますが、②は冗長的です。 おそらくruby的に美しいのは①なのでしょう。 ①引数を配列にする argu =…

gitとかはてなブログでプログラムのコードを入れたい時

gitとかはてなブログでプログラムのコードを入れたい時ってありますよね。 その時はバッククオートを3つ使いましょう。 (マークダウン方式の書き方です、はてなブログの場合は設定でマークダウンで書く設定にしましょう。) pythonならバッククオート3つのあ…

vagrant install方法 (とりあえずまとめてみた)

Vagrantの使い方 virtualboxのインストール https://www.virtualbox.org/wiki/Downloads Vagrantのインストール https://www.vagrantup.com 下記コマンドでバージョンが表示されたらインストール成功です。 vagrant -v 下記URLから好きなOSを選びます http:/…

Google Apps Script ローカル環境構築やってみた

ローカル環境を構築する前に node.jsを入れましょう。(下記urlから取得できます) https://nodejs.org/ja/download/ 一応、下記のコマンドでインストール先とバージョンを確認しておきましょう。 インストール先の確認 $ which node バージョンの確認 $ node …

pythonでseleniumでブラウザ自動で動かしてみた(mac)

運営しているサイトを全画面自動でとりあえずたくさん開きたい時ってないですか? (アプリケーションエラーは拾ってくれるようにしてるので、とりあえずページ開いちゃってバグを洗い出すとな感じです。) 今回はとりあえずyahoo finance(米)で試してみます。…