記事一覧

【ドライバ不要】javascriptが動作するサイトをSeleniumでスクレイピングする

多くのウェブサイトがJavaScriptを活用してデータを読み込むようになり、シンプルなスクレイピングツールでは対応できないことがあります。 今回は、Seleniumを使ってJavaS…

yoshi
7か月前
8

【Colab公開】PythonとBeautiful Soup 4を使ったWebスクレイピング

Web上には様々な情報が豊富に存在しています。その情報を取得する手段としてスクレイピングを用いることができます。 Colab実行環境上にPythonのBeautiful Soupを用いたノ…

yoshi
9か月前
6

【Colab公開】AESとRSAを組み合わせてパスワード情報をセキュアに扱う方法とは?

ID情報をサーバーに置きたくないGCPのサービスアカウントやパスワードなどシステムの認証情報をセキュアに扱いたい場面は頻繁に発生します。AESとRSAを組み合わせてセキュ…

yoshi
9か月前

ラズベリーパイへのSSH接続をパスワードレス化する

ラズベリーパイにSSH接続する際に求められるパスワードを省略する方法を紹介します。 1.公開鍵と秘密鍵の生成以下のコマンドは自分のローカルマシンで公開鍵と秘密鍵のペ…

yoshi
10か月前

Dockerコンテナ内で定期的にバッチ処理する

Dockerコンテナ内で定期的なバッチ処理を実行する場合、コンテナでcronを実行できない場合があります。 その場合は、ホストマシン上でcronジョブを作成し、docker execコ…

yoshi
11か月前
1

GCP VM Managerでバッチ処理

Compute Engineでアプリケーションを運用しています。現在バッチ処理はcronを用いていますが、SSHしないと状態が確認できません。 今回はVM Managerを使ってSSHせずにバッ…

yoshi
2年前
7

GCPで平日日中しか稼働しないサーバーの稼働時間チェックを設定する

Cloud Monitoringのアラートで、有効/無効を切り替えることで実現できました。 Pythonクライアントを使って実装します。Cloud FunctionやCloud Schedulerを組み合わせるこ…

yoshi
2年前
4

Tableau ServerでSSOとパスワード認証を併用する

SSOとパスワード認証を使い分けるケースTableauを使っていてワークブックを作成する人に直接サーバーにアクセスしてもらいたい時ありませんか? 例えば、外部のデータサイ…

yoshi
2年前
1

【ドライバ不要】javascriptが動作するサイトをSeleniumでスクレイピングする

多くのウェブサイトがJavaScriptを活用してデータを読み込むようになり、シンプルなスクレイピングツールでは対応できないことがあります。
今回は、Seleniumを使ってJavaScriptが動作するWebサイトのスクレイピングをし、さらにDockerを組み合わせた環境を整えることで、ドライバーの動作不良を回避する環境を作り上げます。
まず、seleniumのdocker imageを利用する

もっとみる

【Colab公開】PythonとBeautiful Soup 4を使ったWebスクレイピング

Web上には様々な情報が豊富に存在しています。その情報を取得する手段としてスクレイピングを用いることができます。

Colab実行環境上にPythonのBeautiful Soupを用いたノートブックを作成しました。サンプルのHTMLから様々なパターンで情報を取得することができます。

Colabノートブック上ではサンプルのHTML上でさまざまな要素を検索、取得しています。

from bs4 i

もっとみる

【Colab公開】AESとRSAを組み合わせてパスワード情報をセキュアに扱う方法とは?

ID情報をサーバーに置きたくないGCPのサービスアカウントやパスワードなどシステムの認証情報をセキュアに扱いたい場面は頻繁に発生します。AESとRSAを組み合わせてセキュアにこれらの情報を暗号化・復号化するスクリプトを紹介します。

Colab notebookも公開するので実際にコードを実行することもできます。
Githubから「AES&RSA_Crypto.ipynb」にアクセスし「Open

もっとみる

ラズベリーパイへのSSH接続をパスワードレス化する

ラズベリーパイにSSH接続する際に求められるパスワードを省略する方法を紹介します。

1.公開鍵と秘密鍵の生成以下のコマンドは自分のローカルマシンで公開鍵と秘密鍵のペアを生成します。パスフレーズを求められた場合はEnterを押し、パスフレーズを省略します。

# --ローカルマシンで実施--ssh-keygen# --以下は出力結果の例です--Generating public/private r

もっとみる

Dockerコンテナ内で定期的にバッチ処理する

Dockerコンテナ内で定期的なバッチ処理を実行する場合、コンテナでcronを実行できない場合があります。

その場合は、ホストマシン上でcronジョブを作成し、docker execコマンドでコンテナ上のスクリプトを実行することで実現できます。

以下の手順に従って、cronジョブを作成することができます。

1.ホストマシンのdockerコマンドのフルパスを取得

cronジョブではPATHが

もっとみる

GCP VM Managerでバッチ処理

Compute Engineでアプリケーションを運用しています。現在バッチ処理はcronを用いていますが、SSHしないと状態が確認できません。
今回はVM Managerを使ってSSHせずにバッチ処理します。

実行スクリプトを作成する定期実行するスクリプトを作成します。

#!bin/bash# [batch.sh]apt upgrade

スクリプトを「batch.sh」というファイル名で保存

もっとみる

GCPで平日日中しか稼働しないサーバーの稼働時間チェックを設定する

Cloud Monitoringのアラートで、有効/無効を切り替えることで実現できました。

Pythonクライアントを使って実装します。Cloud FunctionやCloud Schedulerを組み合わせることで定期的にアラートの有効/無効を切り替えます。

Sample Code以下のコードで切り替えることができます。

# アラートを有効にするfrom google.cloud impo

もっとみる

Tableau ServerでSSOとパスワード認証を併用する

SSOとパスワード認証を使い分けるケースTableauを使っていてワークブックを作成する人に直接サーバーにアクセスしてもらいたい時ありませんか?

例えば、外部のデータサイエンティストが作成したTableauファイルを納品してくれる場合です。1回限りでTableauをメールでもらって自分でサーバーに入れるのもいいのだけれども、何回も続くと億劫になります。

その場合、社外にアカウントを発行すれば良

もっとみる