ログインするための資格情報を使用するボットを構築しようとしています。ページ上でいくつかのjavascript要素をアクティブにしています。プロダクションでログインしてセッションを維持できるHTTPクライアント
私が使用しているサイトには、使用できるAPIがなく、サイト自体が非常に重いです。
Teslaのようなものを使用して、WatirとCapybaraと同じようにユーザーとしてログインしてブラウザとやりとりできますが、プロダクション環境で使用できますか?
私はElixirには新しいですが、私はinitでログインするように長い実行中のGenServerを使用すると思います。ほとんどのユーザーは2FAを使用しますが、これはユーザーのログイン時に許可されますが、ユーザーがログインしてからの日数を実行する場合は、認証セッション/トークンを保存する必要があります。
私はテストフレームワークであるWatirを使用してボットを正常に構築しました。それはブラウザを開き、物理的にログインします。そして、ボットをうまく処理します。しかし、ヘッドレスドライバに切り替えると、JSは正しく実行されません。
このようなものを製造することは可能ですか?
"ヘッドレスドライバJSはロードされません。"私はこれに従っていません。 chromedriverとgeckodriverはどちらもヘッドレスをサポートしています。これはJSをうまくロードし、どちらもSelenium/Watirコードで動作します。 – titusfortner
ヘッドレスドライバーは何ですか? Phantomよりも少ないものは、フルブラウザで意図されたようにJSを実行することができないでしょう。 – evilSnobu
私はPhantomJSを使用していましたが、JSがどのように実行されていたかに起因して、その時間の約80%を作業することしかできませんでした。だから私はWatirに切り替えました。 (一時的な解決策として私はこのアプリが生産に入るかどうか議論しながら) –