GoogleアラートにRSSアラートを作成するプロジェクトでnode-horseman
を使用しています。まだ接続していないユーザーは、自分のGoogleアカウントにログインして、自分のフィードリストを取得できるようにする必要があります。このアプリケーションは基本的に、作成されたRSSフィードについてのFacebookのニュースの自動投稿に使用されます。非常にシンプルなHorseman/PhantomJS - エラーをチェックしてクッキーを作成する方法を教えてください。
* login() {
if (!this.email || !this.password) {
this.addError(HTTPResponse.STATUS_FORBIDDEN, 'E-mail and Password are necessary')
return false
}
const horseman = new Horseman({ cookiesFile })
return new Promise((resolve, reject) => {
horseman
.open('https://accounts.google.com')
.type('input[type="email"]', this.email)
.click('#next')
.wait(1000)
.type('input[type="password"]', this.password)
.click('#signIn')
.wait(3000)
.close()
setTimeout(function() {
resolve(true)
}, 3000)
})
}
:
はこれまでのところ、login
機能は次のとおりです。ログインしてcookiesFile
を作成すると、新しいフィードを作成して既存のフィードを取得できます。しかし、それはエラーをチェックする方法がないので完全に失敗証明ではなく、例を見つけたり、何かを作ることができなかった。私はevaluate()
を使用して.error_msg
タグがありますかどうかを確認しようとしたが、それはphantomJS Unhandled rejection fn
にエラーがスローされます。
...
.wait(1000)
.evaluate(function() {
if (jQuery('.error-msg').length > 0) {
this.addError(HTTPResponse.STATUS_INTERNAL_SERVER_ERROR, 'Error!')
return false
}
})
...
それは何らかのエラーが実行を中断し、まだ悪いクッキーファイルを作成しませスローしません。
このメソッドは 'this.addError'何ですか?あなたのnode.jsアプリの方法ではありませんか? – Vaviloff
このメソッドは、エラーを格納してUIに表示する私のプロジェクトです。操作クラスは、このメソッドを持つ基本操作を拡張します。 – mfgabriel92
私を助ける方法を知っていますか? – mfgabriel92