2012-11-24 10 views
5

マニュアル入力(キーボードタイピング)のスクリプト(phantomjsまたはcasperjs)を停止して次のステップに進むことはできますか?phantomjs casperjsの実行中の手動入力

例えば、スクリプトはフォームを記入し、スクリーン全体を.pngとしてエクスポートし、最後のフィールドにユーザー入力が入力されるのを待ってから送信をクリックします。 Captchaはこれを必要とする障壁の1つです。 Captcha breaker/solverやそのようなものは、1回の実行で1回しか処理しないので、私は対処したくありません。

助けが必要ですか?

答えて

3

私はそれをやったことはありませんが、あなたが書いたスクリプトがブラウザ/ファントムで実行され、一部のローカルWebサーバにajaxリクエストを送ることができます。あなたの外部のコミュニケーションがあります。

->screenshot 
->send to local server 
->someones open web browser polls the server for new data entry jobs 
->human submits one 
->server receives submission 
->server routes the response back to that initial ajax request 
->that ajax request that got sent from phantomjs finally receives a response. 

このワークフローでは、ファントム/キャスパー(私はちょうどそれらに精通していないよ)から可能な外部通信のいずれかの種類を使用して行うことができます。私はAjaxが動作すると確信していますので、例として使用しました。

+2

私の回避策は、FileSystemを使用して、キャプチャ文字列のファイルコンテンツを読み取ることです。しかし、私はこれを行うより良い方法があるかどうかを調べようとします。 Ajaxは私にとって過度のようです。 –

+1

ちょっと@HP。私はあなたと同じ状況にいます。 FileSystemの回避策に関する詳細情報を私に提供してもらえますか?これを実装するより良い方法はありますか?ありがとうございます –

+1

FSを使用することは非常に醜いハックです。私はお勧めしません。基本的に私はある種のタイマー 'setTimeout'を使ってファイルを読む前にちょっと待っています。だから、20秒程度で、私はすぐに入力を提供するためにテキストファイルを編集します。 –

関連する問題