Webサイトにアクセスしているブラウザ(認証なし)にアクセスしてhtmlを読み取り、jsを実行するawsラムダ関数を作成できますか?AWSラムダでブラウザをシミュレートすることはできますか?
答えて
セットアップでき、ヘッドレスブラウザなどPhantomJSが、それは以降のラムダとの効果的な簡単で、コストではありません、
- が上で動作するバイナリのコンパイル済みのセットを見つける必要がありますAmazon Linux(Lambdaが動作する)
- 各実行時にバイナリをロードする必要があり、ラムダ関数の開始にオーバーヘッドが加わり、また請求時間が長くなります。
このためにEC2インスタンスを実行することをおすすめします。ナノインスタンスやドッカーのコンテナでさえも大丈夫です。
* "実行ごとにバイナリをロードする必要があります" *なぜですか?それを起動して 'context.callbackWaitsForEmptyEventLoop = false'を実行したままにしておき、それをトリガしてコンテナの後続の呼び出しごとに新しいページに移動できますか?それとも、これを防ぐPhantomJSの設計について何かありますか?ラムダ環境の祖先AMIを使用して、Amazon Linux用のバイナリをコンパイルすることができます。これは非常に難しく、扱いにくいですか? (注、下線は正当でないと思われ、私のものではありません。) –
こんにちは@Michael。 Webページの画像スナップショットにPhantomJSを使用し、LambdaとDockerの評価を行いました。バイナリの読み込みに関する私のポイントは、PhanthomJSのバイナリは、寒いスタートを遅くするラムダのために十分な大きさであり、ラムダのコストを追加するメモリを割り当てる必要があることも経験しました。私の主張は、EC2インスタンスまたはドッキング・コンテナ(長時間実行)を使用していることが、これに対してより効率的になる可能性があります。 – Ashan
バイナリに加えて、コンパイルするか、適切なものを探す必要があります。これは数年前には難しかったが、現在はより多くのサポートが利用可能であることを願っている。 context.callbackWaitsForEmptyEventLoopをfalseに設定しようとしましたか?それがうまくいくと面白いようです。 – Ashan
下記をご覧ください。AWS LambdaでSeleniumを使用してブラウザテストを行うためのAWSブログ。 - これはあなたが探しているものですか?
- 1. AWSラムダ関数をJavaScriptで記述することはできますか?
- 2. キネシスストリームをクエリするAWSラムダ関数を書くことはできますか?
- 3. AWSラムダ関数の名前を変更することはできますか?
- 4. ラムダのaws IOTトピックを購読することができますか?
- 5. ジオロケーションをシミュレートできるブラウザ(Chrome、Firefox)プラグインはありますか?
- 6. オフ-VPC awsラムダからオン-VPC awsラムダを呼び出すことはできますが、その逆はできません。
- 7. jqGridのナビゲーションキーをシミュレートすることはできますか?
- 8. Javascriptでブラウザでキーの組み合わせをシミュレートすることはできますか?
- 9. キュウリ/カピバラでブラウザを閉じる/再オープンすることをシミュレートしますか?
- 10. ラムダでループすることはできますか?
- 11. AWSラムダは外部httpsエンドポイントを呼び出すことができません
- 12. AWSラムダは、私がAWS SDKからそのような何かをラムダ関数を作成することができますトリガ
- 13. jQuery UIで交差する 'droppables'をシミュレートすることはできますか?
- 14. ラムダに名前を付けることはできますか?
- 15. AWSラムダとAWSラムダプロキシの違いは何ですか?
- 16. AWSラムダスケジュール - ラムダ内からスケジュールを無効/有効にすることはできますか?
- 17. ダイナミックタイマーでAWSラムダをトリガーできますか?
- 18. AWS APIゲートウェイとラムダを使用してブラウザでCookieを設定する
- 19. ラムダがアレクスキルを呼び出すことはできますか?
- 20. AWSラムダを使用してoauth 2.0トークンを要求することはできますか?
- 21. AWSラムダからドッカーを直接呼び出すことは可能ですか
- 22. bashスクリプトをAWSラムダ関数内に書くことができます
- 23. iPhoneシミュレータで電話をシミュレートすることはできますか?
- 24. 空のラムダをC++ 03の標準ライブラリ機能でシミュレートできますか?
- 25. protractor/seleniumブラウザの自動化スクリプトを実行するAWSラムダスクリプトを記述することはできますか?
- 26. AWSラムダ - XMLスキーマのNamespaceHandlerを見つけることができません
- 27. AWSラムダサービスの他のラムダからラムダを呼び出すことは良い考えですか?
- 28. awsラムダとAPIゲートウェイでpyodbcを使用できません
- 29. S3ラムダ関数でファイルを作成することはできますか?
- 30. メソッドをラムダ関数でオーバーライドすることができます
ラムダ関数は最大5分間実行できることに注意してください。 – mok
私はCasperJSを使用し、それは素晴らしい動作します! – sachin