0

WebドライバーからFFCookieを削除できない場合。.delete_all_cookiesこのメソッドを使用すると、が返されますNone。そして、しようとするとget_cookies、次のエラーが発生します。

webdriver_common.exceptions.ErrorInResponseException:処理中にエラーが発生しました
パケット:コンテンツ-長さ:120
{"elementId": "null"、 "context": "{9b44672f-d547-43a8-a01e-a504e617cfc1}"、 "parameters":[]、 "commandName": "getCookie"}
応答:長さ:266
{"commandName": "getCookie"、 "isError":true、 "response":{"lineNumber":576、 "message": "コンポーネントが失敗コードを返しました:0x80004005(NS_ERROR_FAILURE)[nsIDOMLocation.host]"、 "name" :"NS_ERROR_FAILURE"}、 "elementId": "null"、 "context": "{9b44672f-d547-43a8-a01e-a504e617cfc1"}

どうすれば修正できますか?

アップデート:

これは、変更を加えずにWebドライバーをクリーンインストールすると発生します。別の投稿で言及した変更は、この投稿が投稿された後で行われました(私は自分で問題を修正しようとしていました)。

4

1 に答える 1

0

うーん、私は実際にWebdriverを使用したことがないので、これはまったく役に立たないかもしれません...しかし、他の投稿で、Cookieの削除Webdriverjs関数を変更しようとしていると述べています。削除機能を変更する前にget_cookiesが失敗しましたか?削除する前にCookieを取得するとどうなりますか?webdriver-read-only \ firefox \ src \ extension \ components \ firefoxDriver.jsの削除機能に加えた変更は、削除機能を壊す可能性があると思います。デバッグのためだけに実行しているのですか、それとも、ドライバーがCookieを削除するように指示したときに、ブラウザー自体にポップアップを表示させたいのですか?この変更が壊れても驚かないでしょう。

しかし、私の本当のアドバイスは、Webdriverの代わりにSeleniumを使い始めることです。これは、現在の化身で廃止されているか、Seleniumにモーフィングされているためです。セレンはより積極的に開発されており、かなり活発で反応の良い形をしています。マージが行われている間、それは開発され、安定し続けますが、私はそれを理解していますが、Webdriverには今後のバグ修正がそれほど多くない可能性があります。Cookieを制御するSeleniumコマンドを使用して成功しました。彼らはドキュメントを刷新しているようで、何らかの理由でPython APIへのリンクはありませんが、selenium rcをダウンロードすると、selenium-client-driver-pythonにPythonAPIドキュメントがあります。は、Cookieを制御するための5つほどの便利なメソッドです。たとえば、次のようにするには、独自のカスタムPythonメソッドで使用します。特定の正規表現に一致する名前のすべてのCookieを削除します。何らかの理由で、削除されたCookieに関する情報もブラウザにalert()させたい場合は、PythonメソッドからCookieの名前/値を取得し、それらをseleniumのgetEval()ステートメントに渡して実行することができます。フィードする任意のjs(「alert()」など)。...もしあなたがセレンルートに行くなら、あなたがブロッカーを手に入れたら私に連絡してください、私は援助することができるかもしれません。

于 2009-11-28T23:45:00.963 に答える