1. 検証コードの入力
この種の検証コードは主に次の方法で渡されます。ユーザー 画像内の文字、数字、漢字などを入力して確認します。以下に示すように
2. スライド検証コード
##解決策: この種の確認コードは少し複雑ですが、対応するメソッドがあります。私たちが直接考えているのは、人間が検証コードをドラッグし、ボタンをクリックしてギャップの位置を確認し、最後にパズルをギャップの位置にドラッグして検証を完了するという動作をシミュレートすることです。
ステップ 1: ボタンをクリックします。すると、ボタンをクリックしないと隙間やパズルが表示されず、ボタンをクリックすると表示されることがわかり、隙間の位置を見つけるヒントになりました。
ステップ 2: ギャップ位置までドラッグします。パズルを隙間までドラッグする必要があることはわかっていますが、この距離を数値で表すとどうでしょうか。最初のステップで観察した現象により、ギャップの位置がわかります。ここでは 2 つの写真のピクセルを比較し、ベンチマーク値を設定できます。特定の位置での差がベンチマーク値を超えていれば、2 つの写真の異なる位置が見つかりました。もちろん、右側から開始します。パズルです。横から開始して左から右に移動し、最初の異なる位置を見つけたら終了します。この位置はギャップの左側である必要があるため、セレンを使用してこの位置までドラッグできます。ここでのもう 1 つの質問は、これら 2 つの写真を自動的に保存する方法です。ここでは、まずラベルを検索し、次にその位置とサイズを取得します。次に、上、下、左、右 = location['y'], location['y'] size['height'] location['x'] size ['width'] 、次にスクリーンショットを撮り、最後に画像を切り取ってこれらの 4 つの位置を塗りつぶします。具体的な使用方法については、Selenium のドキュメントを参照してください。ボタンをクリックする前に画像を切り出し、ボタンをクリックした後に画像を切り出します。最後にドラッグするときは、最初に加速し、次に減速するという人間の動作をシミュレートする必要があります。この種の検証コードには動作特性検出機能があるため、人間が一定の速度を維持することは不可能であり、そうでない場合は機械の引きずりであると判断され、検証に合格しません。
関連する学習に関する推奨事項: Python チュートリアル
以上がPython クローラーを識別する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。