上流SEが久しぶりに開発してみる日記

マネジメント専任システムエンジニアがなれないプログラミングをしてみる日記です。

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

<python>jupyter notebookでグラフに日本語タイトルを付ける

jypyter notebookでグラフを出力する際に使うライブラリが、Matplotlib。 とても便利なのですが、タイトル等に日本語を使う際にフォントの登録が必要となります。 詳細なやり方はググってほしいのですが、~.ttcとつくフォントをインストールして、Matplotlib…

Cloud Functionsのテスト方法

Cloud Functionsに関数を登録した後にテストをしたくて、用意されているテスト機能を使いたいときに困ったのでメモ。 pub/subの設定でテストをしようとすると、単純にインプットにしようとしているjsonをインプットすると、dataというキーが見つからなくてエ…

jqueryを使ってみようとしたがmix contentエラー

jqueryを使って、自分のサイトにグロナビメニューを作ろうと思ったのですが、 読み込みエラー。。 javascriptの読み込みのURLがhttpsであるべきところが、httpになっていた。。 過去のサイトを見るとhttpでもうまくいっていたらしい。 まあ、こういうことも…

GO言語でGAE上にグラフ表示その2

前回頑張って画像出力してhtmlに埋め込もうとしましたが、動的コンテンツは制御が難しい。 ふと、ていうか、javascriptでいいのでは?と思い調べるといくらでもライブラリが出てくる。 Google chartを選択したら瞬殺で、 グラフ表示ができました。 いやーな…

GO言語でGAEでグラフを作りたい!

GAE上にGO言語でWEBアプリケーションを作っています。 で、あるデータをもってきてグラフを生成したいなと思っています。 まずは画像ファイルを出力してそれを画面に表示する方式でいこうと思っています。 ライブラリはgonum.org/v1/plotを使用しようと考え…

Go言語でpythonで作成したjsonを取得できない

GO言語で画面を作っているのですが、GCFで作ったJsonをGCS経由で表示しようとしています。 先日の記事のJsonをpythonのlines指定で作成したところ、GO言語の画面側で取得できなかったです。 ■Go言語側のロジック //GCSから取得 b := GetDataFromGCS("shiawas…

python データフレームでjsonを扱うときのlines指定

jsonをデータフレーム変換するときに、ぶつかりました。 jsonファイルって複数データになるとlines指定しないととても見づらい。 なのでlines指定をすると改行されて見やすくなります。 コマンド lines指定有り df_lines.to_json('df_lines.json',orient = '…

GAEでWEBアプリケーションを作る(Google Cloud Storageへアクセス)

GAEでWEBアプリケーションを作って、 作ったWEB画面にGoogle Clund Storageにあるデータを表示するところで躓きました。 こんな感じで、Storageのファイルにアクセスしてテキストを返す関数を作りました。 //GCSからデータ取得func GetData(bucketname strin…

jsonデータがなんかおかしい

一瞬焦った話です。 Google Cloud上にアプリケーションのせてjsonファイルにデータを累積しています。 データはこんな感じ {"データ日付":"2021\/10\/12","値":"100","前日差分":10.0}{"データ日付":"2021\/10\/11","値":90,"前日差分":0.0}{"データ日付":"2…

python データフレームのデータをfor文で1件ずつ処理したい

データフレームのデータを1件ずつ処理したいのですが、 データフレームを行指定してデータを取得する必要があります。 今回は指定した行だけで完結せずに前後の行も参照しながら処理をしたいです。 調べてみるとやり方はいっぱいありそう。 汚いけどこんな感…

python seleniumでクリックできない!

pythonでseleniumを動かしています。 また躓いたので共有。 ajaxとかjavascriptごりごりのサイトだと簡単にクリックできない場合があります。 だいたいは、 driver.find_element_by_xpath('パス').click() こんな感じでいけるんですが、クリックできないとい…

python selenium でテキストボックス先頭に0が入る。

また、しょうもないミスの話。 seleniumでテキストボックスに数字を入れようとするとどうしても 先頭に0が入る。 何を調べもダメ。。。 コードはこう。 nedan1.send_keys('数字') 絶対あっている。 よく動きを見ると、 あれ・・・・ 画面表示したときに初期…

python seleniumでスクレイピングしたいが、動かない。。。。

はい。seleniumもかなり苦戦しましたというお話です。 seleniumというパッケージ(ライブラリ?)を使うと、 簡単にhtmlの要素を指定して、submitしたり、テキスト取得したりできます。 が。。。早速苦戦しました。 苦戦ポイント① 別タブ、別ウインドウ 別タ…

python データフレームで重複削除できない

今回も相当苦戦した重複削除問題を共有します。 ■やりたいこと ①スクレイピングで、データ取得 ②前回保存したGCP上のjsonデータを取得 ③①、②をマージして重複削除する ④結果をGCP上へjsonファイルとしてアップロード これで週次ぐらいで情報収集して、データ…

データフレームで3つの数字の最小値の取得

sumoのスクレイピングを検討していて、 3つの項目の最小値を取得したくなりました。 sumoの場合は、駅距離を3つまで登録できます。 順序にルールはないので、最寄り駅と最寄り駅までの距離を知るためには 住所1、住所2、住所3みたいな3項目を比較して最小…

python データフレームでの日付比較

pythonでニュースサイトをスクレイピングして、 特定の日付以降の新着ニュースをlineで通知したいと思っています。 こんな感じのロジックを考えました。 gist0f98b44e7fbd925b441df9cf47e86e09 でもエラーがでます。。。 TypeError: Invalid comparison betw…

pythonで2つのデータフレームを比較して差分の行を出したい!

ある日のデータと次の日のデータを比較して差分抽出したいです。 使いたいシーンとしては、日々スクレイピングしていて、差分行を抽出し、 新着情報としてメールとかlineするとかしたいのです。 調べてみると、compare関数があるとのこと。 compare なんだこ…

pythonの開発環境(Jupyter Notebookって?)

pythonでいろいろ開発したいのですが、まず悩むのが開発環境をどうやって準備するか。 昔は(今もかな)CとかC++とかだと環境変数のパス通したりとか、 なんだかんだめんどくさかったイメージ。 極論ではコマンドプロンプトでもいいんだけど、ということで検…

pythonでjsonファイルを扱ってみよう!(ローカルのjsonファイルが読み込めない問題)

昔はあまり聞かなかったjson形式 pythonでjsonファイルをローカルにおいて取得しようと思いました。 ネットで検索すると import pandas as pd df=pd.read_json("list.json") これでいけると。 データフレームってのがあるんだなとか思いながら、 ローカルのl…

モノづくりって楽しいよね

こんにちは。 システムエンジニアをしてるアラフォー男性です。 家族は妻と子供二人です。 このブログをはじめようと思ったきっかけは、 モノづくりがしたい! という思いが強くなったためです。 というのも、私は大手システム開発会社に勤めていまして、 こ…