技術日記
今週はスクレイピングのサンプルプログラム作ってた
言語はpythonかnodejsかで迷ったけど、将来外注も考えてる、日本はjavascriptユーザーのほうが多そう
ということでnodejsにしてみた
puppeteer試してみたけどかなり手軽に使い始められるなという印象
npm installするだけでスクレイピングの環境ができあがるというのは良かった
立ち上がりもサクサクしてた
chromium内蔵してるっぽい
ただブラウザがchrome限定というところがちょっと業務で使うには不安があったのでwebdriver使うことにした
webdriverもブラウザは自分で入れる必要あるけどそれ以外は
https://www.npmjs.com/package/selenium-webdriver
こいつ入れるだけだったので別に環境づくりはサクサクっと終わった
コンテナ化もとりあえずサンプルとして作るだけなら
https://hub.docker.com/r/selenium/standalone-chrome/
このイメージを元にnodejs入れればサクッと作れた
Serverlessでスクレイピング環境を作る予定だけど、現在Knativeを検討中
もともとk8sで他の部分を作っていたので、Serverlessの部分もKnative使えれば全体的にk8sで管理できていい感じになりそう
ただKnativeは結構リソース使うからdocker desktopで動かすのはきつめだった
graphql apiの設計レビュー会をやった
graphiqlでドキュメントみんなで見ながらレビュー出来るのいい感じだ
graphql javaでのdataloaderの実装がいまいちまだわかってない
dispatch()が自動で呼ばれない..
ただ現在の設計だとdataloader一旦後回しでも大丈夫そう