ホームページ  >  に質問  >  本文

Python Seleniumは画像検証コードを取得します

画像検証コードをローカルにキャッシュし、ユーザーが Web サービスを通じて画像を表示し、コードを手動で入力してログインできるようにしたいと考えています。
公式操作がインターフェイスレスであることを考慮すると、Selenium のスクリーンショットは使用できません。
Seleniumのスクリーンショットと右クリックの方法以外に何か方法はありますか?

現在、jsを使用して検証コードをcanvasに再リクエストし、toDataURLをpngのbase64コードに変換してDomに出力し、それをseleniumを使用して取得することを考えています。
次のコードテストでは、モバイルモールのログイン入口認証コードを使用しています。

リーリー

検証コードを要求する URL がログイン URL とは異なるドメインからのものである場合、クロスドメイン エラーが報告されます。
この方法で取得した検証コード イメージが現在のセッションの有効期間内にまだ存在するかどうかをテストする必要もあります。
上記のクロスドメインの問題を解決するにはどうすればよいですか?

PHP中文网PHP中文网2685日前1565

全員に返信(4)返信します

  • 欧阳克

    欧阳克2017-06-12 09:23:28

    まずパケットをキャプチャしてイメージのリクエストパスを確認し、次にリクエストを使用してイメージをダウンロードする必要があります

    返事
    0
  • 漂亮男人

    漂亮男人2017-06-12 09:23:28

    上記の方法は一例であり、Selenium + PhantomJSを使用することもできます

    返事
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-06-12 09:23:28

    画像認証コードと画像読み取り時のCookieは統合されています

    回答する確認コードが Cookie と一致していることを確認してください。

    返事
    0
  • 高洛峰

    高洛峰2017-06-12 09:23:28

    最終的にはjsメソッドを使用しました

    リーリー

    返事
    0
  • キャンセル返事