投稿

2月, 2020の投稿を表示しています

はてなブックマークを投稿するためのpython

イメージ
はてブ の投稿用のpythonスクリプトで ボット してたら あれげなこと になってしまったので取りあえず アカウント復活 のためにメールで問合せしつつも、結局はAPIは使えない状態になったので結局ConsumerKeyとか全部発行しなおさないといけない。 で、どうやって発行したのか試行錯誤の過程がまるで残っていないので、非常に困った。 将来の自分が同じようなことで困ったときに備えてはてなのAPIを使うためのシークレットの発行方法とかまとめておくことにしました。 ◆APIキー発行までの作業 1.APIの有効化 ・以下のURLにアクセスする。   http://developer.hatena.ne.jp/ ・[アプリケーション登録]をクリックする。 ・[新しいアプリケーションの追加]をクリック ・[アプリケーションの名称]、[アプリケーションの説明]、[アプリケーションのURL]を入力する。 ・[read_private]、[write_private]にチェックを付けて[変更]をクリック 2.OauthKey発行プログラム ・以下のコードを[oauth_consumer.py]という名前で保存 import urllib import webbrowser import requests from requests_oauthlib import OAuth1 API_KEY = 'OAuth Consumer Key' SECRET_KEY = 'OAuth Consumer Secret' request_url = 'https://www.hatena.ne.jp/oauth/initiate?scope=read_public%2Cread_private%2Cwrite_public%2Cwrite_private' authorize_url = 'https://www.hatena.ne.jp/oauth/authorize' access_token_url = 'https://www.hatena.ne.jp/oauth

Azureで独自ドメインのhttps証明書付静的ホスティングやってみた。

イメージ
静的サイトホスティング シリーズもこれで最後です。 AWS 、 GCP(FireBase) ときて最後が Azure です。 AWS 、 GCP は結構敷居が低いので触りやすかったんですが。最後まで敷居が高いなぁと思っていたのがAzure。結果として思い込みだけというのがあるのでしょうけど。どうもオンプレ時代の SPLA とかライセンス関連の料金体系が複雑だったのでAzureも一緒だと思って、これまで手を出せていませんでした。(2019年にAzure自体は登録したけど 無料枠 は失効しています。) で、なぜ今さらAzureなのかというと IgniteTour でAzure系資格の無料受験特典をいただいたので AZ-203 を受けてみようと思って触り始めた次第です。ちなみにこれだという日本語テキストは2020年1月現在存在しないので( 入門のAZ-900では存在 )、MicrosoftAzureの ラーニングパス でお勉強するしかないようです。今回やった静的サイトホスティングはどちらかというとAWSの構成に近いようなイメージでした。ドメインを追加購入するお金がないので、 GCPの時と同じくサブドメインを設定 して作業します。それではレッツトライ ◆手順 1.AzureDNSでサブドメイン設定 1)Azureポータルにログインしてトップの検索ボックスで「DNS」と入力し検索 2)DNSゾーンを作成するので[DNSゾーン作成]ボタンをクリック 3)リソースグループを作成してインスタンスを作成する。 ・リソースグループで[新規作成]をクリックする。 ・[名前]にリソースグループとして付ける名前を入力し[OK]をクリック ・[インスタンスの詳細]を入力する。[名前]には任意の名称、[リソースグループの場所]は[東日本]を選択する。過不足ないことを確認し[確認および作成]をクリック ・「検証に成功しました」と表示されるので[作成]をクリックする。 ・デプロイ作業が行われる。デプロイ作業が完了すると完了表示がされるので [リソースに移動]をクリック 4)NSレコードの登録 ・

pythonでChromeHeadless使ってスクショしてみた

RPA が流行っているみたいだけど。色々( コストの問題 )とあって導入できないので、なんか解決につながるような方策ないかなぁと思っていたら。 python で ゴニョゴニョすれば うまくいけば自分の労力のみでRPA入れられるんではないかと思って、調査。 その気になればEXCELからURLリストと拾ってくる項目名とか指定して、取得した値をEXCELに転記とかいうこともできるのではなかろうかと思って、少し試してみた。 まずは SIer さんが大好きなWebアプリのスクショを取る部分について試してみることにした。色々とアレンジがいるみたいなので、まずは Google 検索で「 yahoo 」を検索した1ページ目のスクショを取得するとかいうサンプルを作ってみた。 まぁこれは色々と先人がやっているので、そいつをコピペっとしただけなので、またしてもゴミ記事を量産したわけですww ◆事前準備 1.Chromeインストールとフォントの準備 # Chrome Install $ curl https://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add - $ echo 'deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main' | sudo tee /etc/apt/sources.list.d/google-chrome.list $ sudo apt update $ sudo apt -y install google-chrome-stable # IPA Font Install $ sudo apt install -y fonts-ipafont $ fc-cache -fv $ fc-list | grep -i ipa 2.追加ライブラリのインストール $ pip install --upgrade selenium $ pip install --upgrade chromedriver-binary $ pip install --upgrade pyvirtualdisplay ◆ソース import chromedriver_binary impor

GCPでAWSの静的Webサイトホスティングを再現してみる(その2)

イメージ
前回 GCPの CloudStorage 使って AWSのCloudFront+S3使った静的サイト のパターンを再現しようとしたけど、httpなので意図通りに動かなかった件について、 FireBaseHosting を使ってリトライしてみました。AWSでは結構GUIバリバリで作れる構成ですが、GCPでやろうとするとコマンドライン必須になるので結構 ツヨツヨ な人じゃないと厳しいかもしれないです。少なくとも ヨワヨワ な自分にはハードル高かったです。 設定作業自体は先人様がいろいろとしてくださっているのでそれをなぞっただけですが、一応記録にしておきます。 ◆手順 1.FireBaseプロジェクト作成 1)F ireBase コンソールへ移動 2)プロジェクトを作成 ・プロジェクトを追加をクリック ・プロジェクト名を入力し[続行]をクリック ・いったんGoogleアナリティクスは無効、[プロジェクトを作成]をクリック ・プロジェクト作成が完了したら[続行]をクリック ・FireBaseのコンソール画面に遷移する 2.コンソール作業 1)node,npmインストール( nパッケージで導入 ) $ sudo apt install -y nodejs npm $ sudo npm install n -g $ sudo n stable $ sudo apt purge -y nodejs npm $ exec $SHELL -l $ node -v v12.16.0 $ npm -v 6.13.4 2) FireBaseTool インストール #FireBaseToolインストール $ sudo npm install -g firebase-tools #FireBaseTool ログイン #FireBaseTool ログイン $ firebase login --no-localhost i Firebase optionally collects CLI usage and error reporting information to help