Π Π΅ΠΊΠ°ΠΏΡ‡Π° 2: Установка ΠΈ настройка reCAPTCHA 2.0 ΠΎΡ‚ Google

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Google reCAPTCHA v2 Π² PHP

Автор ΡΡ‚Π°Ρ‚ΡŒΠΈ: admin

ΠœΠ΅Ρ‚ΠΊΠΈ: PHP / Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π±ΡƒΠ΄Π΅ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Google reCAPTCHA v2 Π½Π° PHP, эта систСма Π½ΡƒΠΆΠ½Π° для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π±Ρ‹ Π½Π° вашСм сайтС Π½Π΅ Π±Ρ‹Π»ΠΎ спама, поэтому ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΅Ρ‘ установитС.

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ API ΠΊΠ»ΡŽΡ‡Π΅ΠΉ:

ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ Π΄Π΅Π»ΠΎΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊΠ»ΡŽΡ‡, для этого Π·Π°Ρ…ΠΎΠ΄ΠΈΠΌ Π½Π° сайт Google reCAPTCHA, ΠΈ Ρ‚Π°ΠΌ свСрху Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«Admin consoleΒ».

Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ google recaptchaΠ‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ google recaptcha

Π£ вас Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒΡΡ Π² ΠΎΠΊΠ½Π΅ с настройками ΠΊΠ°ΠΏΡ‡ΠΈ, настраиваСм всё ΠΊΠ°ΠΊ ΠΈΠ· ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚Π°.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π½Π°ΡΡ‚Ρ€ΠΎΠΉΠΊΠΈΠŸΡ€ΠΈΠΌΠ΅Ρ€ настройки

Как Π²ΠΈΠ΄ΠΈΡ‚Π΅, я Π½Π°Π·Π²Π°Π» ΠΊΠ°ΠΏΡ‡Ρƒ «ВСст», ΠΈ Π²Ρ‹Π±Ρ€Π°Π» reCAPTCHA v2, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΏΡ‡Π° вСрсии Π΄Π²Π°, Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹Π±Ρ€Π°Π» Ρ‚Π°ΠΌ ΠΏΠΎΠ΄ ΠΏΡƒΠ½ΠΊΡ‚ Ρ„Π»Π°ΠΆΠΎΠΊ «я Π½Π΅ Ρ€ΠΎΠ±ΠΎΡ‚Β», это Π·Π½Π°Ρ‡ΠΈΡ‚ Π½Π° сайтС Ρƒ мСня Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ„Π»Π°ΠΆΠΎΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ всС Π΄Π°Π½Π½Ρ‹Π΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, cookie, ΠΈ Ссли всё Π² порядкС, Ρ‚ΠΎ я Π½Π΅ Ρ€ΠΎΠ±ΠΎΡ‚.

Π”Π°Π»ΡŒΡˆΠ΅ Π² строчкС Π΄ΠΎΠΌΠ΅Π½, Π²Π²ΠΎΠ΄ΠΈΡ‚Π΅ Π΄ΠΎΠΌΠ΅Π½Π½ΠΎΠ΅ имя своСго сайта, со всСм ΡΠΎΠ³Π»Π°ΡˆΠ°Π΅Ρ‚Π΅ΡΡŒ ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅Ρ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒΒ», Ρƒ вас Π΄ΠΎΠ»ΠΆΠ½ΠΎ появится Π½Π° экранС Π΄Π²Π° ΠΊΠ»ΡŽΡ‡Π°.

ΠšΠ»ΡŽΡ‡ΠΈ для ΠΊΠ°ΠΏΡ‡ΠΈΠšΠ»ΡŽΡ‡ΠΈ для ΠΊΠ°ΠΏΡ‡ΠΈ

Если Ρƒ вас всё ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ, Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚ созданиС ΠΊΠ»ΡŽΡ‡Π° ΠΏΡ€ΠΎΡˆΠ»ΠΎ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ, Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ ΠΊΠ»ΡŽΡ‡ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, Π° Π½ΠΈΠΆΠ½ΠΈΠΉ Π½Π° сСрвСрС.

HTML:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ займёмся нашСм HTML Ρ„Π°ΠΉΠ»ΠΎΠΌ, Ρ‚ΡƒΡ‚ всё просто, сдСлаСм Π½Π΅ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ ΠΈ Π² строСм Ρ‚ΡƒΠ΄Π° Google ΠΊΠ°ΠΏΡ‡Ρƒ.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

<!DOCTYPE html>

<html lang=»en»>

<head>

Β Β Β Β <meta charset=»UTF-8″>

Β Β Β Β <title>Google reCAPTCHA</title>

Β Β Β Β <script src=»https://www.google.com/recaptcha/api.js» async defer></script>

</head>

<body>

Β Β Β Β <form action=»http://example.com/form.php» method=»POST»>

Β Β Β Β Β Β Β Β <p>Π›ΠΎΠ³ΠΈΠ½: <input type=»text» name=»login»></p>

Β Β Β Β Β Β Β Β <p>EMail: <input type=»email» name=»email»></p>

Β Β Β Β Β Β Β Β <div data-sitekey=»Π’ пишСм ваш клиСнтский ΠΊΠ»ΡŽΡ‡»></div>

Β Β Β Β Β Β Β Β <hr/>

Β Β Β Β Β Β Β Β <input type=»submit» value=»Submit»>

Β Β Β Β </form>

</body>

</html>

Как Π²ΠΈΠ΄ΠΈΡ‚Π΅ всё ΠΎΡ‡Π΅Π½ΡŒ просто, Π²Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚Π΅ скрипт с API Π² header ΠΈ добавляСтС Π² Ρ„ΠΎΡ€ΠΌΡƒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ div элСмСнт с классом g-recaptcha, Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ data-sitekey, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ…Ρ€Π°Π½ΠΈΡ‚ Π² сСбС ΠΊΠ»ΡŽΡ‡ для клиСнтской части сайта.

Π€ΠΎΡ€ΠΌΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с google recaptcha Π€ΠΎΡ€ΠΌΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с google recaptcha

Как Π²ΠΈΠ΄ΠΈΡ‚Π΅ ΠΎΠ½Π° ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ отобраТаСтся Ρƒ нас.

PHP:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€ΠΈΡˆΠ»ΠΎ врСмя ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π½Π° сторонС сСрвСра, это ΠΎΡ‡Π΅Π½ΡŒ просто, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΊΠ°ΠΏΡ‡ΠΈ, Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒΡΡ вмСстС с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ· Ρ„ΠΎΡ€ΠΌΡ‹, ΠΊΠΎΠ³Π΄Π° Π±ΡƒΠ΄Π΅ΠΌ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΡ‹.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

// ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· ΠΊΠ°ΠΏΡ‡ΠΈ

if (!$_POST[«g-recaptcha-response»]) {

Β Β Β Β // Если Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅Ρ‚, Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° останавливаСтся ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ

Β Β Β Β exit(«ΠŸΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»Π° ошибка»);

} else { // Π˜Π½Π°Ρ‡Π΅ создаём запрос для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΊΠ°ΠΏΡ‡ΠΈ

Β Β Β Β // URL ΠΊΡƒΠ΄Π° ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ запрос для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ

Β Β Β Β $url = «https://www.google.com/recaptcha/api/siteverify»;

Β Β Β Β // ΠšΠ»ΡŽΡ‡ для сСрвСра

Β Β Β Β $key = «Π’ΡƒΡ‚ ΠΊΠ»ΡŽΡ‡ для сСрвСра»;

Β Β Β Β // Π”Π°Π½Π½Ρ‹Π΅ для запроса

Β Β Β Β $query = array(

Β Β Β Β Β Β Β Β «secret» => $key, // ΠšΠ»ΡŽΡ‡ для сСрвСра

Β Β Β Β Β Β Β Β «response» => $_POST[«g-recaptcha-response»], // Π”Π°Π½Π½Ρ‹Π΅ ΠΎΡ‚ ΠΊΠ°ΠΏΡ‡ΠΈ

Β Β Β Β Β Β Β Β «remoteip» => $_SERVER[‘REMOTE_ADDR’] // АдрСс сСрвСра

Β Β Β Β );

Β 

Β Β Β Β // Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ запрос для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ

Β Β Β Β $ch = curl_init();

Β Β Β Β // НастраиваСм запрос

Β Β Β Β curl_setopt($ch, CURLOPT_URL, $url);

Β Β Β Β curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

Β Β Β Β curl_setopt($ch, CURLOPT_POST, true);

Β Β Β Β curl_setopt($ch, CURLOPT_POSTFIELDS, $query);

Β Β Β Β // отправляСт ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅

Β Β Β Β $data = json_decode(curl_exec($ch), $assoc=true);

Β Β Β Β // Π—Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ соСдинСния

Β Β Β Β curl_close($ch);

Β 

Β Β Β Β // Если Π½Π΅Ρ‚ success Ρ‚ΠΎ

Β Β Β Β if (!$data[‘success’]) {

Β Β Β Β Β Β Β Β // ΠžΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ «Π’Π« Π ΠžΠ‘ΠžΠ’»

Β Β Β Β Β Β Β Β exit(«Π’Π« Π ΠžΠ‘ΠžΠ’»);

Β Β Β Β } else {

Β Β Β Β Β Β Β Β // Π˜Π½Π°Ρ‡Π΅ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ Π»ΠΎΠ³ΠΈΠ½ ΠΈ Email

Β Β Β Β Β Β Β Β echo $_POST[‘login’] . «<br/>».

Β Β Β Β Β Β Β Β Β Β Β Β  $_POST[’email’];

Β Β Β Β }

}

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, я написал ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ, Π½ΠΎ всё ΠΆΠ΅ Π½Π°Π΄ΠΎ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΊΠΎΠ΄, Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅, ΠΎΠ½ Ρ‚ΡƒΡ‚ Π½Π΅ Ρ‚Π°ΠΊΠΎΠΉ ΡƒΠΆ слоТный ΠΈ большой.

Π‘Π½Π°Ρ‡Π°Π»Π° ΠΌΡ‹ провСряСм, сущСствуСт Π»ΠΈ пСрСмСнная Π² массивС g-recaptcha-response, которая Ρ…Ρ€Π°Π½ΠΈΡ‚ Π² сСбС ΠΊΠ»ΡŽΡ‡ Ρ‚ΠΎ Google, Ссли Π²Ρ‹ оказались Π½Π΅ Ρ€ΠΎΠ±ΠΎΡ‚, Ссли Π΅Ρ‘ Π½Π΅Ρ‚, Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π° экран Β«ΠŸΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»Π° ошибка» ΠΈ ΠΏΠ΅Ρ€Π΅ΡΡ‚Π°ΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.

Π˜Π½Π°Ρ‡Π΅ ΠΎΠ½ создаёт запрос для ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π½Π° Ρ€ΠΎΠ±ΠΎΡ‚Π°, Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄ этим ΠΌΡ‹ объявляСм Π΄Π²Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, пСрвая, это пСрСмСнная с URL, ΠΊΡƒΠ΄Π° ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ, вторая, Ρ…Ρ€Π°Π½ΠΈΡ‚ ΠΊΠ»ΡŽΡ‡, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ сайтом ΠΈ сСрвисом reCAPTCHA, Ρ‚Π°ΠΊΠΆΠ΅ создаётся массив для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° сСрвСр.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°ΠΊΠΎΠ½Π΅Ρ† Π΄Π΅Π»Π°Π΅ΠΌ запрос Π½Π° сСрвСр для ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ, я Π½Π΅ Π±ΡƒΠ΄Ρƒ Ρ‚ΡƒΡ‚ ΠΎΠ±ΡŠΡΡΠ½ΡΡ‚ΡŒ какая ΠΊΠΎΠΌΠ°Π½Π΄Π° для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ½Π°, Π»ΡƒΡ‡ΡˆΠ΅ посмотритС ΠΏΠΎ этой ссылкС.

ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ json_decode(), ΠΎΠ½Π° Π½ΡƒΠΆΠ½Π° ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ, сСрвСр Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ JSON Π΄Π°Π½Π½Ρ‹Π΅, Π° PHP Π½Π΅ ΡƒΠΌΠ΅Π΅Ρ‚ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ ΠΎΠ½ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ JSON, Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ, Π² нашСм случаС это $assoc=true, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true Π½ΡƒΠΆΠ΅Π½, Ρ‡Ρ‚ΠΎ Π±Ρ‹ ΠΎΠ½ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π°Π» Π½Π΅ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, Π° Π² массив.

Ну ΠΈ Π² ΠΊΠΎΠ½Ρ†Π΅ провСряСм, Ссли Π² массивС Π½Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ success, Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° останавливаСтся ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ надпись Β«Π’Π« Π ΠžΠ‘ΠžΠ’Β» ΠΈΠ½Π°Ρ‡Π΅, Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π»ΠΎΠ³ΠΈΠ½ ΠΈ email, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ Π²Π²ΠΎΠ΄ΠΈΠ»ΠΈ Π² Π½Π°Ρ‡Π°Π»Π΅, Π²ΠΎΡ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ google recaptcha Π² phpΠ Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ google recaptcha Π² php

Как Π²ΠΈΠ΄ΠΈΡ‚Π΅ всё Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

Π’Ρ‹Π²ΠΎΠ΄:

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π²Ρ‹ ΡƒΠ·Π½Π°Π»ΠΈ ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Google reCAPTCHA v2 Π½Π° PHP, ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ это достаточно Π»Π΅Π³ΠΊΠΎ, надСюс Π²Π°ΠΌ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»Π°ΡΡŒ ΡΡ‚Π°Ρ‚ΡŒΡ.

ΠŸΠΎΠ΄ΠΏΠΈΡΡ‹Π²Π°Π΅Ρ‚Π΅ΡΡŒ Π½Π° соц-сСти:

ΠžΡ†Π΅Π½ΠΊΠ°:

ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΠΎΡ†Π΅Π½ΠΈΠ²ΡˆΠΈΡ…: 1
БрСдняя ΠΎΡ†Π΅Π½ΠΊΠ°: 5,00

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ google recaptcha Π² phpΠ Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ google recaptcha Π² php Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ°…

Π’Π°ΠΊΠΆΠ΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ:

Π’Ρ‹ΡˆΠ»Π° новая вСрсия reCaptcha API 2.0 / Π₯Π°Π±Ρ€

На днях, занимаясь ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½Ρ‹ΠΌ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ΠΌ reCaptcha для ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΠ²ΡˆΠΈΡΡŒ с нСбольшой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ Π² области отобраТСния Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π·Π°Ρ‰ΠΈΡ‚Π½Ρ‹Ρ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π½Π° 1 страницС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ AJAX я Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ Ρ€Π°Π· пошСл Π½Π° страницу ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Β«reCaptchaΒ» ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ», Ρ‡Ρ‚ΠΎ докумСнтация сущСствСнно отличаСтся ΠΎΡ‚ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… вСрсий.
Π’ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π²ΡˆΠΈΡΡŒ поиском стало ясным β€” Π² ΠΌΠΈΡ€ Π²Ρ‹ΡˆΠ»Π° Β«recaptcha 2.0Β» с ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½Ρ‹ΠΌ API ΠΈ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Π° Ρ‚Π°ΠΊ ΠΆΠ΅ рядом Π΄Ρ€ΡƒΠ³ΠΈΡ… «плюшСк», ΠΎ Ρ‡Π΅ΠΌ я ΠΈ расскаТу Π² Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅.

Π’ Новой вСрсии reCaptcha, ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ Π΅Π΅ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ слСдуСт Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ Β«gCaptchaΒ» сущСствСнным измСнСниям ΠΏΠΎΠ΄Π²Π΅Ρ€Π³Π»ΠΈΡΡŒ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ интСрфСйс ΠΊΠ°ΠΏΡ‡ΠΈ для Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ взаимодСйствия с сСрвисом Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ (API). Π‘Π°ΠΌΠΈ Β«Π·Π°Ρ‰ΠΈΡ‚Π½Ρ‹Π΅ изобраТСния» сущСствСнно (Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ) Π½Π΅ измСнились.
Π’ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Ρ‚Π°ΠΊ ΠΆΠ΅ Π½Π΅Ρ‚ (ΠΌΠ½Π΅ Π½Π΅ ΡƒΠ΄Π°Π»ΠΎΡΡŒ Π½Π°ΠΉΡ‚ΠΈ) ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± Β«ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ Ρ€Π΅Π»ΠΈΠ·Π΅Β» reCaptcha2, Π° Π½Π° посадочной страничкС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° вСсит Π³ΠΎΡ€Π΄Ρ‹ΠΉ «coming soon».

Новый интСрфСйс reCaptcha 2

Одним ΠΈΠ· сущСствСнных ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ наталкиваСмся практичСски сразу ΠΏΡ€ΠΈ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠ»Π΅Π½ΠΈΠΈ с reCaptcha2 являСтся Π½ΠΎΠ²Ρ‹ΠΉ интСрфСйс оформлСния Π·Π°Ρ‰ΠΈΡ‚Π½ΠΎΠ³ΠΎ изобраТСния.
Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Π±Ρ‹Π» сущСствСнно ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚Π°Π½ β€” Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ½ отобраТаСтся Π² Π²ΠΈΠ΄Π΅ нСбольшого Π²ΠΈΠ΄ΠΆΠ΅Ρ‚Π° с ΠΈΠΌΠΏΡ€ΠΎΠ²ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ чСкбоксом «я Π½Π΅ Ρ€ΠΎΠ±ΠΎΡ‚Β», ΠΏΡ€ΠΈ ΠΊΠ»ΠΈΠΊΠ΅ Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ прСдлагаСтся Ρ€Π°Π·Π³Π°Π΄Π°Ρ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.

ΠŸΡ€ΠΈ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΌ Ρ€Π°Π·Π³Π°Π΄Ρ‹Π²Π°Π½ΠΈΠΈ изобраТСния ΠΊΠ°ΠΏΡ‡Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²ΠΈΠ΄:

Π’ случаС Π½Π΅ΡƒΠ΄Π°Ρ‡Π½ΠΎΠ³ΠΎ разгадывания изобраТСния ΠΊΠ°ΠΏΡ‡Π° ΡƒΠ²Π΅Π΄ΠΎΠΌΠΈΡ‚ ΠΎΠ± этом, Ρ‡Ρ‚ΠΎ являСтся сущСствСнным ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ΠΌ β€” ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ страницу нСсколько Ρ€Π°Π·. ΠšΠ°ΠΏΡ‡Π° Ρ‚Π°ΠΊ ΠΆΠ΅ ΡƒΠ²Π΅Π΄ΠΎΠΌΠΈΡ‚ ΠΎ Π½Π΅ΡƒΠ΄Π°Ρ‡Π΅ Π² случаС истСкания врСмя сСссии.
ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ reCaptcha2 ΠΌΠΎΠΆΠ½ΠΎ Π² ΠΆΠΈΠ²ΡƒΡŽ Π½Π° Π΄Π΅ΠΌΠΎ-страничкС ΠΎΡ‚ Π³ΡƒΠ³Π»Π°.

Новый API

ВмСстС с Π½ΠΎΠ²Ρ‹ΠΌ интСрфСйсом reCaptcha2 для взаимодСйствия ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΈ Π½ΠΎΠ²Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ внСдрСния ΠΈ взаимодСйствия с ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΌ API.
ΠšΠ»ΡŽΡ‡ΠΈ для использования reCaptcha2 Π½Π° Π²Π°ΡˆΠΈΡ… сайтах ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π² Π½ΠΎΠ²ΠΎΠΌ интСрфСйсС (трСбуСтся авторизация google):

ВсС Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΠΎΠ³ΠΎ ΠΈ ΠΏΡƒΠ±Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π² Π΄Π°Π½Π½ΠΎΠΉ вСрсии Π½Π°Π·Π²Π°Π½Ρ‹ ΠΊΠ°ΠΊ «сСкрСтный ΠΊΠ»ΡŽΡ‡Β» ΠΈ Β«ΠΊΠ»ΡŽΡ‡Β» соотвСтствСнно. БущСствСнным ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΊΠ»ΡŽΡ‡ Π² reCaptcha2 Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΌ β€” Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π΄ΠΎΠΌΠ΅Π½, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ планируСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ reCaptcha2 Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½ Π² настройках. Для localhost ΠΈ 127.0.0.1 ΠΊΠ°ΠΏΡ‡Π° Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π±Π΅Π· указания Π΄ΠΎΠΌΠ΅Π½Π°.
Π‘ Π½ΠΎΠ²Ρ‹ΠΌ api Π²Π½Π΅Π΄Ρ€ΠΈΡ‚ΡŒ ΠΊΠ°ΠΏΡ‡Ρƒ Π² Ρ‚Π΅Π»ΠΎ страницы β€” Π΄Π΅Π»ΠΎ 2Ρ… строк ΠΊΠΎΠ΄Π°(*ΠΏΡ€ΠΈΠΌΠ΅Ρ€ простого внСдрСния):

<script src="https://www.google.com/recaptcha/api.js" async defer></script>
<div data-sitekey="your_site_key"></div>

НСсмотря Π½Π° это, api ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ достаточно большим Π½Π°Π±ΠΎΡ€ΠΎΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Ρ†ΠΈΠΉ Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠΈ reCaptcha2 ΠΈ настройки Π΅Π΅ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ(ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎ callback’Ρƒ, стилизация ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅).
ИзмСнился ΠΈ API для Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ взаимодСйствия ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ с ΠΊΠ°ΠΏΡ‡Π΅ΠΉ. Π‘Ρ€Π°Π·Ρƒ Ρ…ΠΎΡ‡Ρƒ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ€Π°Π½Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ стандартный post field β€” recaptcha_response_field Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ имСнуСтся ΠΊΠ°ΠΊ g-recaptcha-response. Π‘Π°ΠΌ API Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ JSON, Ρ‡Ρ‚ΠΎ собствСнно Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ Ρ€Π°Π΄ΠΎΠ²Π°Ρ‚ΡŒ. Запрос Π½Π° Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΡŽ ΠΏΡ€ΠΈ submit`e Ρ„ΠΎΡ€ΠΌΡ‹ с ΠΊΠ°ΠΏΡ‡Π΅ΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:
www.google.com/recaptcha/api/siteverify?secret=your_secret&response=response_string&remoteip=user_ip_address

Π³Π΄Π΅ соотвСтствСнно secret β€” ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ (сСкрСтный ΠΊΠ»ΡŽΡ‡), response β€” Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (post.g-recaptcha-response), remoteip β€” ΠΈΠΏ-адрСс ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (Π½Π΅ обязатСлСн). Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° Π΄Π°Π½Π½ΠΎΠΌ URL Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ Π² JSON Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅:

{
  "success": true|false,
  "error-codes": [...]
}

Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ‡Π΅Π³ΠΎ, валидация ΠΊΠ°ΠΏΡ‡ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° Π² 1 строку (json_decode; object->success).
ДокумСнтация: ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° google

Π”Ρ€ΡƒΠ³ΠΈΠ΅ Β«FuturesΒ»

Помимо всСго Π²Ρ‹ΡˆΠ΅ описанного Π² Π»ΠΈΡ‡Π½ΠΎΠΌ ΠΊΠ°Π±ΠΈΠ½Π΅Ρ‚Π΅ reCaptcha2 Π²ΠΈΠ΄Π½Ρ‹ Β«Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈΒ» статистики, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·ΠΆΠ΅ позволят Π²Π°ΠΌ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π²Π°ΡˆΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, связанноС с Ρ€Π°Π·Π³Π°Π΄Ρ‹Π²Π°Π½ΠΈΠ΅ΠΌ ΠΊΠ°ΠΏΡ‡ΠΈ. Π’Π°ΠΊ ΠΆΠ΅ доступны статистичСскиС Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΠ± «индСксС спама» ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ… Ρ€ΡŽΡˆΠ΅Ρ‡ΠΊΠ°Ρ…, ΠΌΠ½Π΅ ΠΏΠΎΠΊΠ° Π½Π΅ ясно для Ρ‡Π΅Π³ΠΎ ΠΎΠ½ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹(Π²ΠΈΠ΄ΠΈΠΌΠΎ для увСдомлСния ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΠΈ/ΠΏΠΎΠ½ΠΈΠΆΠ΅Π½ΠΈΠΈ Ρ‚Π΅Π½Π΄Π΅Π½Ρ†ΠΈΠΈ с количСством Ρ€Π°Π·Π³Π°Π΄Ρ‹Π²Π°Π½ΠΈΠΉ ΠΊΠ°ΠΏΡ‡ Π½Π° сайтС).
Π’ reCaptcha2 Ρ‚Π°ΠΊ ΠΆΠ΅ сохранСны Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ для людСй с ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΌΠΈ возмоТностями β€” доступно ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΊΠ°ΠΏΡ‡ΠΈ ΠΈ скачиваниС mp3.

Бсылки ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅:

П.с. β€” для ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒΠ΅Π², ΡƒΠ²Π»Π΅ΠΊΠ°ΡŽΡ‰ΠΈΡ…ΡΡ php ΠΏΡ€ΠΈΠΊΡ€Π΅ΠΏΠ»ΡŽ ссылку Π½Π° Π³ΠΎΡ‚ΠΎΠ²ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ ΠΏΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½Π½ΠΎΠΌΡƒ(хотя β€” ΠΊΡƒΠ΄Π° ΡƒΠΆΠ΅ Π»Π΅Π³Ρ‡Π΅ Ρ‚ΠΎ?) использованию reCaptcha2: github/google

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ reCAPTCHA 2 | AntiCaptcha plugin solver

ΠžΠ±Ρ‰ΠΈΠ΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹


Когда нашС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ Π½Π° страницС Π±Π»ΠΎΠΊ reCAPTCHA 2 (Π½Π΅ Π²Π°ΠΆΠ½ΠΎ обычная это ΠšΠ΅ΠΊΠ°ΠΏΡ‡Π° ΠΈΠ»ΠΈ invisible) ΠΎΠ½ΠΎ посылаСт API запрос ΠΊ сСрвису anti-captcha.com, ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅ΠΌ Π΅ΠΌΡƒ Site key ΠΈ Π΄ΠΎΠΌΠ΅Π½ сайта ΠΈ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ ΠΎΡ‚ Π½Π΅Π³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° Π² Π²ΠΈΠ΄Π΅ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π₯Сша. Π­Ρ‚ΠΎΡ‚ Ρ…Π΅Ρˆ записываСтся Π² Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠΎΠ΅ тСкстовоС ΠΏΠΎΠ»Π΅ Π½Π° страницС рядом с Π Π΅ΠΊΠ°ΠΏΡ‡Π΅ΠΉ. Π”Π°Π»Π΅Π΅ ΠΏΡ€ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹ этот Ρ…Π΅Ρˆ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ сайт, Π²Π°Π»ΠΈΠ΄ΠΈΡ€ΡƒΠ΅Ρ‚ Π΅Π³ΠΎ Ρƒ Π“ΡƒΠ³Π»Π° ΠΈ, ΡƒΠ±Π΅Π΄ΠΈΠ²ΡˆΠΈΡΡŒ Ρ‡Ρ‚ΠΎ всС впорядкС, ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ. Π¦Π΅Π»Π΅Π²ΠΎΠΉ сайт ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ callback Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, ΠΎ Π½Π΅ΠΉ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π» Π½ΠΈΠΆΠ΅.

Invisible (нСвидимая) Π Π΅ΠΊΠ°ΠΏΡ‡Π°


ΠžΡΠΎΠ±Ρ‹ΠΉ Ρ‚ΠΈΠΏ ΠΊΠ°ΠΏΡ‡ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ выглядит ΠΊΠ°ΠΊ нСбольшой Π·Π½Π°Ρ‡ΠΎΠΊ Π Π΅ΠΊΠ°ΠΏΡ‡ΠΈ, находящийся ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π² ΠΏΡ€Π°Π²ΠΎΠΌ Π½ΠΈΠΆΠ½Π΅ΠΌ ΡƒΠ³Π»Ρƒ сайта. Π―Π²Π½ΠΎ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π΅Π·Π°ΠΌΠ΅Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΏΡ‡ΠΈ. И ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΠ½Π° привязываСтся ΠΊ ΠΊΠ½ΠΎΠΏΠΊΠ΅ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Ρ„ΠΎΡ€ΠΌΡ‹. ΠŸΡ€ΠΈ Π΅Π΅ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ Π“ΡƒΠ³Π» Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ, ΠΏΡ€ΠΈ ΠΏΠΎΠ΄ΠΎΠ·Ρ€Π΅Π½ΠΈΠΈ Π² использовании Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π±Π»ΠΎΠΊ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ прСдлагаСтся Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π²ΠΈΡ‚Ρ€ΠΈΠ½Ρ‹ ΠΌΠ°Π³Π°Π·ΠΈΠ½ΠΎΠ², Π΄ΠΎΡ€ΠΎΠΆΠ½Ρ‹Π΅ Π·Π½Π°ΠΊΠΈ ΠΈ Ρ‚. Π΄.. ПослС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ прохоТдСния тСста ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π²Π½Π°Ρ‡Π°Π»Π΅ вызываСтся Callback функция (Ссли Π΅ΡΡ‚ΡŒ), Π° Π·Π°Ρ‚Π΅ΠΌ отправляСтся Ρ„ΠΎΡ€ΠΌΠ°.


Для нашСго Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Π½Π΅Ρ‚ особой Ρ€Π°Π·Π½ΠΈΡ†Ρ‹ ΠΊΠ°ΠΊΡƒΡŽ Π Π΅ΠΊΠ°ΠΏΡ‡Ρƒ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ. Π Π°Π·Π²Π΅ Ρ‡Ρ‚ΠΎ Π² случаС с Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠΎΠΉ Π Π΅ΠΊΠ°ΠΏΡ‡Π΅ΠΉ Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π΄Π΅Π½Π΅Π³, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΎΠΏΡ†ΠΈΡŽ «ΠΠ°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ Ρ€Π°Π·Π³Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ reCAPTCHA 2 Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ появлСнии ΠΎΠΊΠ½Π° с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ», ΠΎ Π½Π΅ΠΉ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ большС Π½Π° страницС с совСтами ΠΏΠΎ финансовой ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ нашСго Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ.

НСсколько Π Π΅ΠΊΠ°ΠΏΡ‡ Π½Π° ΠΎΠ΄Π½ΠΎΠΉ страницС

На ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅Π± страницС всСгда ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ нСсколько Π Π΅ΠΊΠ°ΠΏΡ‡, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΠ΄Π½Π° для Π±Π»ΠΎΠΊΠ° с рСгистрациСй, другая для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. ΠŸΡ€ΠΈΡ‡Π΅ΠΌ Ρ‡Π°Ρ‰Π΅ всСго всС ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ Π Π΅ΠΊΠ°ΠΏΡ‡ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ΄ΠΈΠ½ Site key (ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π΄ΠΎΠΌΠ΅Π½Π° Π² систСмС Recaptcha 2), Π° Ρ€Π΅ΠΊΠ°ΠΏΡ‡ΠΈ Ρ‚ΠΈΠΏΠ° invisible β€” Π΄Ρ€ΡƒΠ³ΠΎΠΉ. ΠœΡ‹ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΡƒΠ΅ΠΌ всС Π Π΅ΠΊΠ°ΠΏΡ‡ΠΈ с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌ sitekey ΠΈ сСрвису anti-captcha.com отправляСтся ΠΎΠ΄Π½ΠΎ, максимум Π΄Π²Π° задания (Ссли Π½Π° страницС присутствуСт ΠΈ обычная ΠΈ invisible Ρ€Π΅ΠΊΠ°ΠΏΡ‡ΠΈ) Π½Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. Π’Π΅ΠΌ самым достигаСтся экономия Π²Π°ΡˆΠΈΡ… срСдств.

Callback функция

Часто для ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π Π΅ΠΊΠ°ΠΏΡ‡ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ само Ρ…Π΅Ρˆ-Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΎΡ‚ anti-captcha.com, Π½ΠΎ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ JS Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Π»Π°Π΄Π΅Π»Π΅Ρ† Ρ†Π΅Π»Π΅Π²ΠΎΠ³ΠΎ сайта ΡƒΠΊΠ°Π·Π°Π» ΠΏΡ€ΠΈ настройкС Π Π΅ΠΊΠ°ΠΏΡ‡ΠΈ Π² качСствС Ρ‚ΠΎΠΉ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½Π°Π΄ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ послС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ прохоТдСния ΠΊΠ°ΠΏΡ‡ΠΈ. Π’Π°ΠΊ называСмая callback функция.

Π’Π°ΠΊ ΠΊΠ°ΠΊ Ρ€Π΅ΠΊΠ°ΠΏΡ‡ Π½Π° страницС ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСсколько, Ρ‚ΠΎ наш Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ автоматичСски опрСдСляСт для ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· Π½ΠΈΡ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ этот callback. ΠŸΡ€ΠΈΡ‡Π΅ΠΌ этот Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Π΅Ρ‚ мноТСство Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ², распрСдСлСнных ΠΏΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π°ΠΌ.

О ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π°Ρ… Π²Ρ‹Π·ΠΎΠ²Π° callback Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для Π Π΅ΠΊΠ°ΠΏΡ‡ΠΈ

Π“Π»Π°Π²Π½Ρ‹ΠΉ (ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ) ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ ΠΈΠΌΠ΅Π΅Ρ‚ Π±Π»ΠΎΠΊ Π Π΅ΠΊΠ°ΠΏΡ‡ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» ΡƒΠΊΠ°Π·Π°Π½ Π² API запросС Π² ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅Β solveRecaptcha. Π’.Π΅. Ссли Π²Ρ‹ явно Π² API запросС ΡƒΠΊΠ°Π·Π°Π»ΠΈ, Ρ‡Ρ‚ΠΎ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π²ΠΎΡ‚ эту ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ Π Π΅ΠΊΠ°ΠΏΡ‡Ρƒ, Ρ‚ΠΎ callback ΠΏΠΎΡ‡Ρ‚ΠΈ навСрняка Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Π²Π°Π½ для Π½Π΅Π΅, Π½Π΅ зависимо ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ²: скрыт этот Π±Π»ΠΎΠΊ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ ΠΈΠ»ΠΈ Π½Π΅Ρ‚ ΠΈ Ρ‚. Π΄.

Π”Π°Π»Π΅Π΅ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ отдаСтся ΠΎΠ΄Π½ΠΎΠΌΡƒ СдинствСнному Π²ΠΈΠ΄ΠΈΠΌΠΎΠΌΡƒ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ Π±Π»ΠΎΠΊΡƒ Π Π΅ΠΊΠ°ΠΏΡ‡ΠΈ. Π­Ρ‚ΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ частый случай. Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π·Π½Π°Ρ‚ΡŒ навСрняка, ΠΊΠ°ΠΊΡƒΡŽ Π Π΅ΠΊΠ°ΠΏΡ‡Ρƒ наш ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π·Π°Π΄ΡƒΠΌΠ°Π» Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ, Ρ‚ΠΎ Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ‚ окончания Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈΠ· ΠΈΡ… мноТСства выбСраСтся ΠΎΠ΄Π½Π°, которая Π½Π΅ скрыта ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΈ для Π½Π΅Π΅ вызываСтся callback. Если Π Π΅ΠΊΠ°ΠΏΡ‡Π° ΠΎΠ΄Π½Π° Π½Π° страницС β€” Ρ‚ΠΎ ΠΎΠ½Π° всС-Ρ€Π°Π²Π½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π²ΠΈΠ΄Π½Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ, ΠΈΠ½Π°Ρ‡Π΅ callback Π½Π΅ вызываСтся!

ΠŸΡ€ΠΈΡ‡Π΅ΠΌ Ρ‚ΠΈΠΏ Ρ€Π΅ΠΊΠ°ΠΏΡ‡ΠΈ «Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠ°Ρ» (invisible) Π½Π΅ являСтся Π² нашСм ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ скрытой ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π•Π΅ Π·Π½Π°Ρ‡ΠΎΠΊ всС-Ρ€Π°Π²Π½ΠΎ виднССтся Π² ΠΏΡ€Π°Π²ΠΎΠΌ Π½ΠΈΠΆΠ½Π΅ΠΌ ΡƒΠ³Π»Ρƒ ΠΈ ΠΌΡ‹ Π΅Π΅ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€ΠΈΡ‚ΠΈΡ€ΡƒΠ΅ΠΌ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΡƒΡŽ. Π’ΠΎΡ‚ Ссли этот Π·Π½Π°Ρ‡ΠΎΠΊ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ совсСм скрыт ΠΎΡ‚ Π³Π»Π°Π· ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅, Ρ‚ΠΎ Ρ‚ΠΎΠ³Π΄Π° эта Ρ€Π΅ΠΊΠ°ΠΏΡ‡Π° интСрпритируСтся ΠΊΠ°ΠΊ скрытая ΠΈ ΠΎΠ½Π° Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ callback.

ПослСдняя Π² ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π΅ Π²Ρ‹Π·ΠΎΠ²Π° callback Π Π΅ΠΊΠ°ΠΏΡ‡Π°, это Ρ‚Π°, которая Π±Ρ‹Π»Π° Π²Ρ‹Π·Π²Π°Π½Π° с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠΉ ΠΎΠΏΡ†ΠΈΠΈ «ΠΠ°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ Ρ€Π°Π·Π³Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ reCAPTCHA 2 Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ появлСнии ΠΎΠΊΠ½Π° с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ».Β  Π’. Π΅. Ссли опция Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π°, ΠΈ срСди мноТСства Π Π΅ΠΊΠ°ΠΏΡ‡ Π½Π° страницС для ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ Π±Π»ΠΎΠΊΠ° появится ΠΎΠΊΠ½ΠΎ, Π³Π΄Π΅ Π½Π°Π΄ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ свСтофоры ΠΈΠ»ΠΈ Π²ΠΈΡ‚Ρ€ΠΈΠ½Ρ‹ ΠΌΠ°Π³Π°Π·ΠΈΠ½ΠΎΠ², Ρ‚ΠΎ, согласно ΠΈΠ΄Π΅Π΅ этой ΠΎΠΏΡ†ΠΈΠΈ, начнСтся сам процСсс Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΏΡ‡ΠΈ ΠΈ Π² ΠΈΡ‚ΠΎΠ³Π΅ callback Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Π²Π°Π½ ΠΈΠΌΠ΅Π½Π½ΠΎ для этого Π±Π»ΠΎΠΊΠ° Π Π΅ΠΊΠ°ΠΏΡ‡ΠΈ, Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π΄Π²Π° Π²Ρ‹ΡˆΠ΅ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… условия (Π²Ρ‹Π·ΠΎΠ² API ΠΌΠ΅Ρ‚ΠΎΠ΄Π° solveRecaptcha ΠΈΠ»ΠΈ ΠΎΠ΄Π½Π° СдинствСнная видимая Π Π΅ΠΊΠ°ΠΏΡ‡Π°), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π½Ρ‹ΠΌΠΈ.

На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ всС ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Ρ‹ ΠΏΠΎΠΊΡ€Ρ‹Π²Π°ΡŽΡ‚, ΠΏΠΎ Π½Π°ΡˆΠ΅ΠΌΡƒ мнСнию, Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ случаСв, ΠΊΠΎΠ³Π΄Π° этот callback Π½Π°Π΄ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ, ΠΈ, Π² Ρ‚ΠΎ ΠΆΠ΅ самоС врСмя, ΠΎΡ‚ΡΠ΅ΠΊΠ°ΡŽΡ‚ Ρ‚Π΅ Π²Ρ‹Π·ΠΎΠ²Ρ‹ callback, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ лишними. Если Ρƒ вас Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ вопросы ΠΏΠΎ Π²Ρ‹Π·ΠΎΠ²Ρƒ callback, Π½Π΅ ΡΡ‚Π΅ΡΠ½ΡΠΉΡ‚Π΅ΡΡŒ ΠΏΠΈΡΠ°Ρ‚ΡŒ свои ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² Π½Π°ΡˆΡƒ слуТбу ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ.Β 

Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΠΈ | AntiCaptcha plugin solver

ΠŸΡ€ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ любого Π²ΠΈΠ΄Π° ΠΊΠ°ΠΏΡ‡ΠΈ


Плагин всСгда рисуСт Π½Π° Ρ†Π΅Π»Π΅Π²ΠΎΠΈ сайтС Π·Π½Π°Ρ‡ΠΎΠΊ нашСго ΠΏΠ»Π°Π³ΠΈΠ½Π° рядом с Ρ€Π΅ΡˆΠ°Π΅ΠΌΠΎΠΉ ΠΊΠ°ΠΏΡ‡Π΅ΠΉ. Π­Ρ‚ΠΎΡ‚ HTML элСмСнт, ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ… классов, всСгда ΠΈΠΌΠ΅Π΅Ρ‚ CSS класс .antigate_solver. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ Π΅Π³ΠΎ всСгда ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ ΠΏΠΎ Ρ‚Π°ΠΊΠΎΠΌΡƒ сСлСктору.


Помимо ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-Π΄Π΅ΠΊΠΎΡ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ, ΠΎΠ½ Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ Π²Π°ΡˆΠ΅ΠΌΡƒ скрипту ΠΎ статусС Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΏΡ‡ΠΈ. Π’Π°ΠΊ ΠΊΠ°ΠΊ этот элСмСнт Ρ‚Π°ΠΊ ΠΆΠ΅ содСрТит классы Ρ‚ΠΈΠΏΠ° Ρ€Π΅ΡˆΠ°Π΅ΠΌΠΎΠΉ ΠΊΠ°ΠΏΡ‡ΠΈ ΠΈ статуса Π΅Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ.


НапримСр Π·Π½Π°Ρ‡ΠΎΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΡ‚ Ρ‚Π°ΠΊΡƒΡŽ Π³Ρ€ΡƒΠΏΠΏΡƒ CSS классов: «.antigate_solver.recaptcha.in_process». Π§Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ‚ΠΈΠΏΠΎΠΌ ΠΊΠ°Ρ‡ΠΈ являСтся Recaptcha2 (ΠΈΠ»ΠΈ Recaptcha3), Π° статус Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ «Π’ процСссС».


Π’ΠΈΠΏΠ°ΠΌΠΈ ΠΊΠ°ΠΏΡ‡ ΡΠ²Π»ΡΡŽΡ‚ΡΡ: recaptcha, funcaptcha, geetest, hcaptcha ΠΈ image (обычная ΠΊΠ°ΠΏΡ‡Π° с искаТСнными символами).


Бтатусы Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ: in_process, solved, error.


БоотвСтствСнно ваш скрипт ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΠΈΡ€Π°Ρ‚ΡŒΡΡ Π½Π° классы элСмСнта Π·Π½Π°Ρ‡ΠΊΠ° AntiCaptcha plugin ΠΈ ΠΈΠΌΠ΅Ρ‚ΡŒ прСдставлСниС ΠΎ Ρ‚ΠΎΠΌ, Π² ΠΊΠ°ΠΊΠΎΠΌ статусС находится Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΏΡ‡ΠΈ.

РСшСниС reCAPTCHA 2 («Π― Π½Π΅ Ρ€ΠΎΠ±ΠΎΡ‚»)


Recaptcha 2 (Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡƒΡŽ Π Π΅ΠΊΠ°ΠΏΡ‡Ρƒ) подхватываСтся ΠΈ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ автоматичСски Π½Π° всСх Π½ΠΎΠ²Ρ‹Ρ… страницах Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.
Π—Π°Ρ‚Π΅ΠΌ для этого Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ вызываСтся callback функция, ΠΊΡƒΠ΄Π° ΠΈ пСрСдаСтся ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° Π Π΅ΠΊΠ°ΠΏΡ‡Ρƒ.
ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΡƒΡ…ΠΎΠ΄ΠΈΡ‚ Π³Π΄Π΅-Ρ‚ΠΎ ΠΎΠΊΠΎΠ»ΠΎ ΠΌΠΈΠ½ΡƒΡ‚Ρ‹, Π½ΠΎ Π²Ρ‹ всСгда ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ ΠΏΡ€Π΅ΠΊΠ΅ΡˆΠΈΠ½Π³Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ процСсс Ρ€Π°Π±ΠΎΡ‚Ρ‹.

ΠšΠ°ΠΏΡ‡Π° Π― Π½Π΅ Ρ€ΠΎΠ±ΠΎΡ‚ автоматичСски находится Π½Π° страницС ΠΈ распознаСтся. Если Π² настройках ΠΏΠ»Π°Π³ΠΈΠ½Π° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Π΅ оповСщСния, Ρ‚ΠΎ Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Π΅ сигналы Π·Π²ΡƒΡ‡Π°Ρ‚: ΠΊΠΎΠ³Π΄Π° такая ΠΊΠ°ΠΏΡ‡Π° Π½Π°ΠΉΠ΄Π΅Π½Π°, Π² процСссС Π΅Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈ ΠΏΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡŽ.

Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ большС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ Π Π΅ΠΊΠ°ΠΏΡ‡ΠΈ ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ callback-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

РСшСниС reCAPTCHA v3


ΠŸΡ€ΠΎΡΡ‚ΠΎ установитС ΠΆΠ΅Π»Π°Π΅ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ score (Desired score) Π² настройках ΠΏΠ»Π°Π³ΠΈΠ½Π° ΠΈ Π½Π΅ Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π³Π°Π»ΠΎΡ‡ΠΊΡƒ «Π Π°Π·Π³Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ reCAPTCHA 3 автоматичСски» Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠΉ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, всС ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Π΅ ΠΊΠ°ΠΏΡ‡ΠΈ, Π±ΡƒΠ΄ΡƒΡ‚ автоматичСски Ρ€Π΅ΡˆΠ°Ρ‚ΡŒΡΡ Π² Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Π½Π° любой посСщаСмой страницС.

ΠšΠ°ΠΏΡ‡Π° Π― Π½Π΅ Ρ€ΠΎΠ±ΠΎΡ‚ автоматичСски находится Π½Π° страницС ΠΈ распознаСтся. Если Π² настройках ΠΏΠ»Π°Π³ΠΈΠ½Π° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Π΅ оповСщСния, Ρ‚ΠΎ Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Π΅ сигналы Π·Π²ΡƒΡ‡Π°Ρ‚: ΠΊΠΎΠ³Π΄Π° такая ΠΊΠ°ΠΏΡ‡Π° Π½Π°ΠΉΠ΄Π΅Π½Π°, Π² процСссС Π΅Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈ ΠΏΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡŽ.

РСшСниС FunCaptcha с Ρ€ΠΎΡ‚Π°Ρ†ΠΈΠ΅ΠΉ Π·Π½Π°Ρ‡ΠΊΠΎΠ² ΠΆΠΈΠ²ΠΎΡ‚Π½Ρ‹Ρ…


FunCaptcha Ρ‚Π°ΠΊ ΠΆΠ΅ распознаСтся ΠΈ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ автоматичСски Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ Π Π΅ΠΊΠ°ΠΏΡ‡Π΅, смотритС ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚.
Для Π½Π΅Π΅ Ρ‚ΠΎΠΆΠ΅ вызываСтся callback ΠΌΠ΅Ρ‚ΠΎΠ΄ с ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° распознавания.
ΠŸΡ€ΠΎΡ†Π΅ΡΡ разгадывания ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π½ΡΡ‚ΡŒ ΠΎΡ‚ 30 сСкунд Π΄ΠΎ Π΄Π²ΡƒΡ… ΠΌΠΈΠ½ΡƒΡ‚.

ΠšΠ°ΠΏΡ‡Π° FunCaptcha автоматичСски находится Π½Π° страницС ΠΈ распознаСтся. Если Π² настройках ΠΏΠ»Π°Π³ΠΈΠ½Π° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Π΅ оповСщСния, Ρ‚ΠΎ Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Π΅ сигналы Π·Π²ΡƒΡ‡Π°Ρ‚: ΠΊΠΎΠ³Π΄Π° такая ΠΊΠ°ΠΏΡ‡Π° Π½Π°ΠΉΠ΄Π΅Π½Π°, Π² процСссС Π΅Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈ ΠΏΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡŽ.

РСшСниС FunCaptcha Ρ‡Π΅Ρ€Π΅Π· прокси


Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ Π€Π°Π½ΠΊΠ°ΠΏΡ‡Ρƒ Ρ‡Π΅Ρ€Π΅Π· прокси. Π’ этом случаС ваш IP адрСс ΠΈ IP адрСс Ρ€Π΅ΡˆΠ΅Π½ΠΎΠΉ ΠΊΠ°ΠΏΡ‡ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ!

Π’ΠΠ˜ΠœΠΠΠ˜Π•!!! Для Π·Π°Π΄Π°Π½ΠΈΠΉ ΠΊΠ°ΠΏΡ‡ΠΈ Π±Π΅Π· прокси Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Funcaptcha Proxyless Π·Π°Π΄Π°Π½ΠΈΠΉ Π² Π΄Π²ΡƒΡ… мСстах:
1) На страницС API настроСк Ρ‡Ρ‚ΠΎΠ±Ρ‹ эти Ρ‚ΠΈΠΏΡ‹ Π·Π°Π΄Π°Π½ΠΈΠΉ Ρ€Π΅ΡˆΠ°Π»ΠΈΡΡŒ Π² ΠΏΠ»Π°Π³ΠΈΠ½Π΅.
2) А Ρ‚Π°ΠΊ ΠΆΠ΅ Π² опциях ΠΏΠ»Π°Π³ΠΈΠ½Π° Π½Π°Π΄ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Π³Π°Π»ΠΎΡ‡ΠΊΡƒ Π Π°Π·Π³Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ Funcaptcha автоматичСски.

РСшСниС китайской Geetest ΠΊΠ°ΠΏΡ‡ΠΈ


Π‘ Π½Π΅Π΄Π°Π²Π½ΠΈΡ… ΠΏΠΎΡ€ ΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ ΠΈ с Geeest ΠΊΠ°ΠΏΡ‡Π°ΠΌΠΈ ΠΈ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΈΡ… Ρ€Π΅ΡˆΠ°Π΅ΠΌ.
Π’Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΏΡ‡ΠΈ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°ΡŽΡ‚ΡΡ автоматичСски Π½Π° всСх Π½ΠΎΠ²Ρ‹Ρ… страницах Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅.

ΠšΠ°ΠΏΡ‡Π° FunCaptcha автоматичСски находится Π½Π° страницС ΠΈ распознаСтся. Если Π² настройках ΠΏΠ»Π°Π³ΠΈΠ½Π° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Π΅ оповСщСния, Ρ‚ΠΎ Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Π΅ сигналы Π·Π²ΡƒΡ‡Π°Ρ‚: ΠΊΠΎΠ³Π΄Π° такая ΠΊΠ°ΠΏΡ‡Π° Π½Π°ΠΉΠ΄Π΅Π½Π°, Π² процСссС Π΅Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈ ΠΏΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡŽ.

РСшСниС hCaptcha (Cloudfare) ΠΊΠ°ΠΏΡ‡ΠΈ


hCaptcha автоматичСски Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ Π½Π° всСх Π½ΠΎΠ²Ρ‹Ρ… страницах Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅.

ΠšΠ°ΠΏΡ‡Π° FunCaptcha автоматичСски находится Π½Π° страницС ΠΈ распознаСтся. Если Π² настройках ΠΏΠ»Π°Π³ΠΈΠ½Π° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Π΅ оповСщСния, Ρ‚ΠΎ Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Π΅ сигналы Π·Π²ΡƒΡ‡Π°Ρ‚: ΠΊΠΎΠ³Π΄Π° такая ΠΊΠ°ΠΏΡ‡Π° Π½Π°ΠΉΠ΄Π΅Π½Π°, Π² процСссС Π΅Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈ ΠΏΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡŽ.

ΠžΠ±Ρ‹Ρ‡Π½Π°Ρ графичСская ΠΊΠ°ΠΏΡ‡Π°

Для ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΊΠ°ΠΏΡ‡-ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΎΠΊ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ контСкстноС мСню (ΠΊΠ»ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΎΠΉ клавишСй ΠΌΡ‹ΡˆΠΊΠΈ) Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅ ΠΊΠ°ΠΏΡ‡ΠΈ ΠΈ Π² мСню Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ «ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽ ΠΊΠ°ΠΏΡ‡Ρƒ» (1), ΠΈΠ»ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ CTRL+SHIFT+3. На ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ Π·Π½Π°Ρ‡ΠΎΠΊ AntiCaptcha plugin, ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‰ΠΈΠΉ, Ρ‡Ρ‚ΠΎ всС ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ для Π΄Π°Π½Π½ΠΎΠ³ΠΎ сайта Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ содСрТащиС ΠΊΠ°ΠΏΡ‡Ρƒ.

Π’Π°ΠΊΠΆΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ контСкстноС мСню Π½Π° ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π° ΠΎΡ‚Π²Π΅Ρ‚Π° Π½Π° ΠΊΠ°ΠΏΡ‡Ρƒ ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π² спискС «ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ ΠΏΠΎΠ»Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Π΅Π»Π΅ΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΏΡ‡ΠΈ» (2), ΠΈΠ»ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ CTRL+SHIFT+3. Рядом с ΠΏΠΎΠ»Π΅ΠΌ Π²Π²ΠΎΠ΄Π° Ρ‚ΠΎΠΆΠ΅ появится Π·Π½Π°Ρ‡ΠΎΠΊ ΠΏΠ»Π°Π³ΠΈΠ½Π°.

ΠŸΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΠ΅Ρ‚ функция автопоиска ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ с ΠΊΠ°ΠΏΡ‡Π΅ΠΉ ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ клавиш CTRL+SHIFT+6 Π½Π° ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π° ΠΊΠ°ΠΏΡ‡ΠΈ, аналогичная Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Ρƒ Π² WebVisum. ПослС разгадывания ΠΊΠ°ΠΏΡ‡ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ сразу ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½ Π² ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π°.

Π‘ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΌ Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΌ дСйствия ΠΏΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‡Π°Π½ΠΈΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ ΠΈ поля Π²Π²ΠΎΠ΄Π° ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π°ΡŽΡ‚ΡΡ Π·Π²ΡƒΠΊΠΎΠ²Ρ‹ΠΌ ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ΠΌ.

АвтоматичСскоС Ρ€Π°Π·Π³Π°Π΄Ρ‹Π²Π°Π½ΠΈΠ΅ начнСтся ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ для всСх Π½ΠΎΠ²Ρ‹ΠΉ страниц Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΎΠΌΠ΅Π½Π°, содСрТащих ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΈ ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π°. Π§Ρ‚ΠΎΠ±Ρ‹ Π²ΠΏΡ€Π΅Π΄ΡŒ процСсс разгадывания Π½Π΅ повторялся достаточно ΠΊΠ»ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΌΡ‹ΡˆΠΊΠΎΠΉ Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π·Π½Π°Ρ‡ΠΊΠΎΠ² ΠΏΠ»Π°Π³ΠΈΠ½Π° рядом с ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΎΠΉ ΠΈΠ»ΠΈ рядом с ΠΏΠΎΠ»Π΅ΠΌ Π²Π²ΠΎΠ΄Π°. ΠŸΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° этот Π·Π½Π°Ρ‡ΠΎΠΊ Π½Π° Π½Π΅ΠΌ появится Π±ΡƒΠΊΠ²Π° X ΠΈ ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΏΠΎΠΌΠ΅Ρ‚ΠΊΠ° удалится.

Π’Π΅ΠΏΠ΅Ρ€ ΠΊΠ°ΠΏΡ‡Π°-ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° автоматичСски находится Π½Π° страницС, распознаСтся ΠΈ ΠΎΡ‚Π²Π΅Ρ‚ вставляСтся Π² ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½ΠΎΠ΅ ΠΏΠΎΠ»Π΅. Если Π² настройках ΠΏΠ»Π°Π³ΠΈΠ½Π° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Π΅ оповСщСния, Ρ‚ΠΎ Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Π΅ сигналы Π·Π²ΡƒΡ‡Π°Ρ‚: ΠΊΠΎΠ³Π΄Π° такая ΠΊΠ°ΠΏΡ‡Π° Π½Π°ΠΉΠ΄Π΅Π½Π°, Π² процСссС Π΅Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈ ΠΏΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡŽ разгадывания.

АвтоматичСскоС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Google Recaptcha / Π₯Π°Π±Ρ€

ΠŸΡ€ΠΈΠ²Π΅Ρ‚! Π― Π²ΠΎΠΏΠ»ΠΎΡ‰Π°ΡŽ интСрСсныС ΠΈΠ΄Π΅ΠΈ Π½Π° python ΠΈ Ρ€Π°ΡΡΠΊΠ°Π·Ρ‹Π²Π°ΡŽ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΈΠ· этого Π²Ρ‹ΡˆΠ»ΠΎ. Π’ ΠΏΡ€ΠΎΡˆΠ»Ρ‹ΠΉ Ρ€Π°Π· я ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» Π½Π°ΠΉΡ‚ΠΈ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΈ Π½Π° ΠΊΠ°Ρ€Ρ‚Π΅ Ρ†Π΅Π½ нСдвиТимости. ΠŸΡ€ΠΎΡΡ‚ΠΎ Ρ‚Π°ΠΊ. На этот Ρ€Π°Π· идСя Π±Ρ‹Π»Π° ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ систСму, которая смогла Π±Ρ‹ сама Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΡƒΡŽ Π½Ρ‹Π½Π΅ Google Recaptcha 2.0, ΠΎΡΠ½ΠΎΠ²Ρ‹Π²Π°ΡΡΡŒ Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°Ρ… ΠΈ большой Π±Π°Π·Π΅ ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ².
Google Recaptcha 2.0 прСдставляСт собой Π½Π°Π±ΠΎΡ€ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ (9 ΠΈΠ»ΠΈ 16 ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΎΠΊ ΠΏΠΎΠ΄ ΠΎΠ΄Π½ΠΎΠΉ инструкциСй), срСди ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ, для подтвСрТдСния своСй разумности, Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ всС изобраТСния ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ. Π Π΅Ρ‡ΡŒ ΠΏΠΎΠΉΠ΄Π΅Ρ‚ НЕ ΠΎ построСнии систСмы машинного обучСния β€” Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Π²Π°Ρ‚ΡŒ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊΠ°ΠΏΡ‡ΠΈ!

Если Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΡŒ Π½Π΅ Ρ…ΠΎΡ‡Π΅Ρ‚ Π²Π΄Π°Π²Π°Ρ‚ΡŒΡΡ Π² подробности тСхничСского ΠΏΠ»Π°Π½Π° ΠΈ Ρ€ΠΎΠΌΠ°Π½Ρ‚ΠΈΠΊΡƒ исслСдований, Ρ‚ΠΎ Π²Ρ‹Π²ΠΎΠ΄ всСй ΡΡ‚Π°Ρ‚ΡŒΠΈ Π±ΡƒΠ΄Π΅Ρ‚ сосрСдоточСн ΠΎΠΊΠΎΠ»ΠΎ Π‘ΠšΠ“ Π² ΠΊΠΎΠ½Ρ†Π΅.
ΠžΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠ΅ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ ΠΊΠ°ΠΏΡ‡ для Π΄Π°Π½Π½ΠΎΠ³ΠΎ исслСдования ΠΌΠ½Π΅ любСзно прСдоставил сСрвис Π°Π½Ρ‚ΠΈΠΊΠ°ΠΏΡ‡ΠΈ RuCaptcha.com, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ API для доступа ΠΊ Π²Ρ‹Π±ΠΎΡ€ΠΊΠ°ΠΌ Ρ€Π΅ΡˆΠ΅Π½Π½Ρ‹Ρ… ΠΊΠ°ΠΏΡ‡ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ для ΠΌΠΎΠ΅Π³ΠΎ исслСдования.
Π‘Ρ‚ΠΎΠΈΡ‚ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Google располагаСт Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ большим Π½Π°Π±ΠΎΡ€ΠΎΠΌ инструкций для ΠΊΠ°ΠΏΡ‡ (ΠΏΡ€ΠΈΠΌΠ΅Ρ€: Select all images with recreational vehicle) Π½Π° всСх основных языках ΠΌΠΈΡ€Π°, Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ инструкции Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Ρ‡Π°Ρ‰Π΅ Π΄Ρ€ΡƒΠ³ΠΈΡ…. Π”Π°Π»Π΅Π΅ Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ΄ Ρ‚ΠΈΠΏΠΎΠΌ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Ρ‚ΡŒΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ инструкции для ΠΊΠ°ΠΏΡ‡ΠΈ.

Высячи ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ

ПослС Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ сортировки ΠΏΡ€ΠΎΠ±Π½ΠΎΠΉ ΠΏΠ°Ρ€Ρ‚ΠΈΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ я стал Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΊΠ°ΠΏΡ‡. ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ Π΄Π΅Π»ΠΎΠΌ я построил md5 суммы ΠΎΡ‚ всСх ΠΊΠ°ΠΏΡ‡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° Π² Π½Π°Π΄Π΅ΠΆΠ΄Π΅ Π½Π°ΠΉΡ‚ΠΈ совпадСния. Π‘Π°ΠΌΡ‹ΠΉ простой способ Π½Π΅ сработал β€” совпадСний попросту Π½Π΅ Π±Ρ‹Π»ΠΎ. А Ρ‡Ρ‚ΠΎ? β€” ИмСю ΠΏΡ€Π°Π²ΠΎ!
ΠŸΡ€ΠΎΠ³ΡƒΠ»ΠΈΠ²Π°ΡΡΡŒ Π³Π»Π°Π·Π°ΠΌΠΈ ΠΏΠΎ ΠΈΠΊΠΎΠ½ΠΊΠ°ΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, нашлось ΠΊΠΎΠ΅-Ρ‡Ρ‚ΠΎ интСрСсноС. Π’ΠΎΡ‚, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 4 ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Ρ… Π»ΠΈΠΌΡƒΠ·ΠΈΠ½Π°:

ΠžΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅, Π΄Π° Π½Π΅ совсСм β€” это Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎ ΠΏΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°ΠΌ колСса Π² Π½ΠΈΠΆΠ½ΠΈΡ… Π»Π΅Π²Ρ‹Ρ… ΡƒΠ³Π»Π°Ρ…. ΠŸΠΎΡ‡Π΅ΠΌΡƒ для сравнСния Π±Ρ‹Π»ΠΈ Π²Ρ‹Π±Ρ€Π°Π½Ρ‹ ΠΈΠΌΠ΅Π½Π½ΠΎ Π»ΠΈΠΌΡƒΠ·ΠΈΠ½Ρ‹? Π˜Ρ… Π»Π΅Π³Ρ‡Π΅ всСго Π±Ρ‹Π»ΠΎ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ Π³Π»Π°Π·Π°ΠΌΠΈ β€” ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ Π΄ΠΎΡ€ΠΎΠΆΠ½Ρ‹Ρ… Π·Π½Π°ΠΊΠΎΠ² ΠΈΠ»ΠΈ Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠΉ ΡƒΠ»ΠΈΡ† ΡΠ»ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² ΠΎΠ΄Π½Ρƒ, Π° ΠΈΡΠΊΠ°Ρ‚ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠΈΠ΅ Π»ΠΈΠΌΡƒΠ·ΠΈΠ½Ρ‹ ΠΈΠ»ΠΈ ΠΏΠΈΠΊΠ°ΠΏΡ‹ Π±Ρ‹Π»ΠΎ ΠΏΡ€ΠΎΡ‰Π΅ простого. ΠžΡ†Π΅Π½ΠΈΠ² Π³Π»Π°Π·Π°ΠΌΠΈ изобраТСния Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ², Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… я ΡƒΠ²ΠΈΠ΄Π΅Π» ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΠ΅ΡΡ ΠΊΠ°ΠΏΡ‡ΠΈ с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ дСформациями β€” растяТСниями, сТатиями ΠΈΠ»ΠΈ смСщСниями. Найдя ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΡΡ‰ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ похоТСсти ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ собрав Π΄ΠΎΡΡ‚Π°Ρ‚ΠΎΡ‡Π½ΡƒΡŽ Π±Π°Π·Ρƒ, ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π½Π°Π΄Π΅ΡΡ‚ΡŒΡΡ Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ успСх.

Perceptive hash

ΠŸΠΎΡ‡Ρ‚ΠΈ всС поисковыС запросы Π²Π΅Π΄ΡƒΡ‚ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊ Π½Π΅ΠΌΡƒ. На Ρ…Π°Π±Ρ€Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚Ρ‹ΡΠΊΠ°Ρ‚ΡŒ достаточно ΠΌΠ½ΠΎΠ³ΠΎ статСй, посвящСнных ΠΏΠ΅Ρ€Ρ†Π΅ΠΏΡ‚ΠΈΠ²Π½ΠΎΠΌΡƒ Ρ…ΡΡˆΡƒ (1, 2, 3, 4). Быстро нашлась ΠΈ python Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡ΠΊΠ° ImageHash, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π°Ρ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ NumPy ΠΈ SciPy.

Как ΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Perceptive Hash? Π’ΠΊΡ€Π°Ρ‚Ρ†Π΅:

dct = scipy.fftpack.dct(scipy.fftpack.dct(pixels, axis=0), axis=1)
dctlowfreq = dct[:hash_size, :hash_size]
med = numpy.median(dctlowfreq)
diff = dctlowfreq > med

  1. Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ сТимаСтся Π΄ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° hash_size.
  2. ΠžΡ‚ значСния ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠΈΡ…ΡΡ пиксСл бСрСтся дискрСтноС Ρ„ΡƒΡ€ΡŒΠ΅ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅.
  3. ΠžΡ‚ Ρ„ΡƒΡ€ΡŒΠ΅ прСобразования считаСтся ΠΌΠ΅Π΄ΠΈΠ°Π½Π°.
  4. ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° Ρ„ΡƒΡ€ΡŒΠ΅ прСобразования сравниваСтся с ΠΌΠ΅Π΄ΠΈΠ°Π½ΠΎΠΉ ΠΈ Π² качСствС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ Π½ΡƒΠ»Π΅ΠΉ ΠΈ Π΅Π΄ΠΈΠ½ΠΈΡ†.

Π’Π΅ΠΌ самым ΠΎΡ‚ изобраТСния ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠ½Π²Π°Ρ€ΠΈΠ°Π½Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΏΡ€ΠΈ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… измСнСниях исходного изобраТСния. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ hash_size Ρ€Π°Π²Π΅Π½ 8 ΠΈ ΠΎΠ½ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ сСбя ΠΏΠΎΠΊΠ°Π·Π°Π» Π½Π° ΠΏΡ€ΠΎΠ±Π½Ρ‹Ρ… сравнСниях. Одно ΠΈΠ· Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… свойств Π΄Π°Π½Π½ΠΎΠ³ΠΎ Ρ…ΡΡˆΠ° β€” ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ Ρ€Π°Π·Π½ΠΎΡΡ‚ΡŒ ΠΈΡ… выглядит ΠΊΠ°ΠΊ Π½Π°Ρ‚ΡƒΡ€Π°Π»ΡŒΠ½ΠΎΠ΅ число.
БСйчас поясню. Π₯эш изобраТСния β€” это ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° Π½ΡƒΠ»Π΅ΠΉ ΠΈΠ»ΠΈ Π΅Π΄ΠΈΠ½ΠΈΡ† (ноль β€” Π½ΠΈΠΆΠ΅ ΠΌΠ΅Π΄ΠΈΠ°Π½Ρ‹, Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Π° β€” Π²Ρ‹ΡˆΠ΅). Для нахоТдСния Ρ€Π°Π·Π½ΠΈΡ†Ρ‹, ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ ΡΡ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ΡΡ поэлСмСнтно ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Π½ΠΈΡ†Ρ‹ равняСтся количСству ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‰ΠΈΡ…ΡΡ элСмСнтов Π½Π° ΠΎΠ΄Π½ΠΈΡ… ΠΈ Ρ‚Π΅Ρ… ΠΆΠ΅ позициях. Π­Ρ‚Π°ΠΊΠΈΠΉ XOR Π½Π° ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅.

ДСсятки тысяч ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ

ΠŸΠ΅Ρ€Ρ†Π΅ΠΏΡ‚ΠΈΠ²Π½Ρ‹ΠΉ Ρ…ΡΡˆ Ρ…ΠΎΡ€ΠΎΡˆΠΎ опрСдСлял сходство ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ΄Π½ΠΈΠΌ ΠΈ Ρ‚Π΅ΠΌ ΠΆΠ΅ Π»ΠΈΠΌΡƒΠ·ΠΈΠ½ΠΎΠΌ, Π½ΠΎ с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ дСформациями, ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ изобраТСниями. Однако, Ρ…ΡΡˆ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ скорСС для описания Ρ„ΠΎΡ€ΠΌ, ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Π½Ρ‹Ρ… Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅: ΠΏΡ€ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠΈ числа ΠΊΠ°ΠΏΡ‡ Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½Ρ‹ совпадСния ΠΏΠΎ Ρ„ΠΎΡ€ΠΌΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Π½ΠΎ Π½Π΅ ΠΏΠΎ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ (с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΏΠΎΡ€ΠΎΠ³ΠΎΠΌ срабатывания, разумССтся).
Π’Π°ΠΊ ΠΈ ΡΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ. Π‘ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ Π±Π°Π·Ρ‹ ΠΊΠ°ΠΏΡ‡, росла Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π² Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π΅Ρ‰Ρ‘ ΠΎΠ΄Π½ΠΎΠΉ ΡΡ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹ для ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ.
ΠžΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½ΡƒΡŽ Ρ†Π²Π΅Ρ‚ΠΎΠ²ΡƒΡŽ характСристику изобраТСния ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ гистограмой интСнсивности Ρ†Π²Π΅Ρ‚ΠΎΠ². Ѐункция расстояния для Π΄Π²ΡƒΡ… гистограмм (ΠΎΠ½Π° ΠΆΠ΅ функция разности) β€” сумма срСднСквадратичных ΠΎΡ‚ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠΉ элСмСнтов гистограммы. Π”ΠΎΠ²ΠΎΠ»ΡŒΠ½ΠΎ нСплохая связка получаСтся. Абзац ΠΎ ΠΏΠΎΠ΄Π±ΠΎΡ€Π΅ Π³Ρ€Π°Π½ΠΈΡ† срабатывания ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ΅ поиска ΠΏΠΎΡ…ΠΎΠΆΠΈΡ… изобраТСнийУстановлСниС ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… допустимых Ρ€Π°Π·Π½ΠΈΡ† Ρ…ΡΡˆΠ΅ΠΉ происходило Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ:

  1. ИмССм ΠΏΠΎΡ€ΠΎΠ³ΠΈ срабатывания для Ρ€Π°Π·Π½ΠΈΡ† ΠΏΠ΅Ρ€Ρ†Π΅ΠΏΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ Ρ…ΡΡˆΠ° ΠΈ гистрограмы: max phash distance ΠΈ max histogram distance
  2. Для всСх ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° строим Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΏΠΎΡ…ΠΎΠΆΠΈΡ…, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠ°ΠΏΡ‡Π΅ соотвСтствуСт ΠΏΠ°Ρ€Π° чисСл β€” расстояния Π΄ΠΎ Β«Π³Π»Π°Π²Ρ‹Β» Π³Ρ€ΡƒΠΏΠΏΡ‹ phash distance ΠΈ histogram distance
  3. ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ всю Π³Ρ€ΡƒΠΏΠΏΡƒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ провСряСм Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ошибок
  4. Π’ случаС Π»ΠΎΠΆΠ½Ρ‹Ρ… срабатываний ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΠΎΡ€ΠΎΠ³ΠΎΠ²

Π’ ΠΏΡƒΠ½ΠΊΡ‚Π΅ 1 я упомянул, Ρ‡Ρ‚ΠΎ Ρƒ Π³Ρ€ΡƒΠΏΠΏΡ‹ Π΅ΡΡ‚ΡŒ Β«Π³Π»Π°Π²Π°Β»: ΠŸΡ€ΠΈ поискС ΠΏΠΎΡ…ΠΎΠΆΠΈΡ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠ°ΠΏΡ‡Π° сравниваСтся Π½Π΅ со всСй Π±Π°Π·ΠΎΠΉ, Π° лишь с Π³Π»Π°Π²Π°ΠΌΠΈ Π³Ρ€ΡƒΠΏΠΏ ΠΏΠΎΡ…ΠΎΠΆΠΈΡ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. Π’ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΠ΅ гарантируСтся, Ρ‡Ρ‚ΠΎ всС изобраТСния ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌΠΈ с Π³Π»Π°Π²ΠΎΠΉ, Π½ΠΎ Π½Π΅ гарантируСтся ΠΈΡ… ΠΏΠΎΡ…ΠΎΠΆΠ΅ΡΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ достигаСтся Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ΠΉΠ³Ρ€Ρ‹Ρˆ Π² быстродСйствии.
Π§ΡƒΡ‚ΡŒ ΠΏΠΎΠ·ΠΆΠ΅ я ΡƒΠ·Π½Π°Π» ΠΎΠ± Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°Ρ… ΠΆΠ°Π΄Π½ΠΎΠ³ΠΎ поиска, Π½ΠΎ Π±Ρ‹Π»ΠΎ ΠΏΠΎΠ·Π΄Π½ΠΎ. Π’ Ρ‚Π΅ΠΎΡ€ΠΈΠΈ Ρ‚Π°ΠΊΠΎΠΉ Π½Π°ΠΊΠΎΠ»Π΅Π½ΠΎΡ‡Π½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΈΡ‰Π΅Ρ‚ ΠΏΠ΅Ρ€Π²ΠΎΠ΅, Π° Π½Π΅ самоС подходящСС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠ°ΠΊ Π² Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ΅ ΠΆΠ°Π΄Π½ΠΎΠ³ΠΎ поиска. Однако это ΠΌΠ΅ΡˆΠ°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ³Π΄Π° поиск вСдСтся ΠΏΠΎ всСм Ρ‚ΠΈΠΏΠ°ΠΌ инструкций сразу.

Π‘ ΠΎΠ΄Π½ΠΎΠΉ стороны, учитывая Ρ‚ΠΎΡ‚ Ρ„Π°ΠΊΡ‚, Ρ‡Ρ‚ΠΎ Ρ€Π°Π·Π½ΠΈΡ†Π° phash Ρƒ ΠΎΡ‡Π΅Π½ΡŒ Π±Π»ΠΈΠ·ΠΊΠΈΡ… ΠΏΠΎ Ρ„ΠΎΡ€ΠΌΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π²Π½Π° Π½ΡƒΠ»ΡŽ, ΠΈ прСдставив, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ Π»ΠΎΠΆΠ½Ρ‹Ρ… срабатываний Π±ΡƒΠ΄Π΅Ρ‚ достаточно Π½ΠΈΠ·ΠΎΠΊ β€” ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ использованиС ΠΎΠ΄Π½ΠΎΠ³ΠΎ лишь ΠΏΠ΅Ρ€Ρ†Π΅ΠΏΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ Ρ…ΡΡˆΠ° Π±ΡƒΠ΄Π΅Ρ‚ быстрСС, Ρ‡Π΅ΠΌ использованиС Π΄Π²ΡƒΡ… Ρ…ΡΡˆΠ΅ΠΉ. Но Ρ‡Ρ‚ΠΎ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°?

Для сравнСния я использовал Π΄Π²Π΅ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ ΠΊΠ°ΠΏΡ‡ Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠΎ 4000 ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. Один Ρ‚ΠΈΠΏ ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΉ Β«ΠΏΠΎΡ…ΠΎΠΆΠ΅ΡΡ‚ΡŒΡŽΒ», Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ β€” Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚. Под ΠΏΠΎΡ…ΠΎΠΆΠ΅ΡΡ‚ΡŒΡŽ (ΠΎΠ½Π° ΠΆΠ΅ ΡΠΆΠΈΠΌΠ°Π΅ΠΌΠΎΡΡ‚ΡŒ) я имСю Π² Π²ΠΈΠ΄Ρƒ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ 2 случайных изобраТСния ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΠΎΡ€ΠΎΠ³Π°ΠΌΠΈ срабатывания Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌΠΈ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Ρ…ΡΡˆΠ΅ΠΉ. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΠΎΡ†Π΅Π½ΠΊΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅:

instructions						: phash only	: both hashes
Π΄ΠΎΡ€ΠΎΠΆΠ½Ρ‹Π΅ Π·Π½Π°ΠΊΠΈ (Π½Π΅ названия ΡƒΠ»ΠΈΡ†!)			: 0.001%	: 0.002%
Π»ΠΈΠΌΡƒΠ·ΠΈΠ½Ρ‹						: 52.97%	: 60.12%

Π‘ΠΎΠ»ΡŒΡˆΠ΅ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρ‹ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π»ΠΈΠΌΡƒΠ·ΠΈΠ½ΠΎΠ² ΠΏΠΎΡ…ΠΎΠΆΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ собой, Π²ΠΎΡ‚ это Π΄Π°! ΠŸΡ€ΠΈ использовании ΠΎΠ±ΠΎΠΈΡ… Ρ…ΡΡˆΠ΅ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ всС-Ρ‚Π°ΠΊΠΈ Π»ΡƒΡ‡ΡˆΠ΅, Π½ΠΎ ΠΊΠ°ΠΊ Π΄Π΅Π»ΠΎ обстоит с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ?

instructions						: phash only	: both hashes
Π΄ΠΎΡ€ΠΎΠΆΠ½Ρ‹Π΅ Π·Π½Π°ΠΊΠΈ (Π½Π΅ названия ΡƒΠ»ΠΈΡ†!)			: 31.37s	: 31.06s
Π»ΠΈΠΌΡƒΠ·ΠΈΠ½Ρ‹						: 17.85s	: 17.23s

Π£Π΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π½ΠΎ использованиС ΠΎΠ±ΠΎΠΈΡ… Ρ…ΡΡˆΠ΅ΠΉ оказалось быстрСС, Ρ‡Π΅ΠΌ использованиС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠ΅Ρ€Ρ†Π΅ΠΏΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ Ρ…ΡΡˆΠ° с Π½ΡƒΠ»Π΅Π²Ρ‹ΠΌ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΎΡ‚ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ΠΌ. РазумССтся, это Π²Ρ‹Π·Π²Π°Π½Π½ΠΎ Ρ€Π°Π·Π½ΠΈΡ†Π΅ΠΉ Π² количСствС опСрация сравнСния ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, ΠΈ это ΠΏΡ€ΠΈΡ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ сравнСниС гистограм ΠΈΠ· 300 Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ сравнСния ΠΏΠ΅Ρ€Ρ†Π΅ΠΏΡ‚ΠΈΠ²Π½Ρ‹Ρ… Ρ…Π΅ΡˆΠ΅ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 8 Π±Π°ΠΉΡ‚ Π½Π° 28.7%!

Π‘ΠΎΡ‚Π½ΠΈ тысяч ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π΄Π°Π»ΠΈ ΠΎ сСбС Π·Π½Π°Ρ‚ΡŒ Π½Π° Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ большом объСмС Π²Ρ‹Π±ΠΎΡ€ΠΎΠΊ. Для самых популярных Ρ‚ΠΈΠΏΠΎΠ² врСмя поиска ΠΏΠΎΡ…ΠΎΠΆΠΈΡ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π½Π° ΠΌΠΎΡ‘ΠΌ Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠ΅ составляло ΡƒΠΆΠ΅ сСкунды. Π’Ρ€Π΅Π±ΠΎΠ²Π°Π»Π°ΡΡŒ оптимизация поиска с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ потСрями точности.
ИзмСнСниС точности phash Π½Π΅ казалось ΠΌΠ½Π΅ Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΉ ΠΈΠ΄Π΅Π΅ΠΉ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ посмотрим Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π° гистограмму интСнсивности Ρ†Π²Π΅Ρ‚ΠΎΠ² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΊΠ°ΠΏΡ‡ΠΈ:

Если Π±Ρ‹ мСня попросили ΠΊΡ€Π°Ρ‚ΠΊΠΎ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ эту гистограмму, Ρ‚ΠΎ я Π±Ρ‹ сказал Ρ‚Π°ΠΊ: Β«Π Π΅Π·ΠΊΠΈΠΉ ΠΏΠΈΠΊ Π½Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ абсциссы 55, Π·Π°Ρ‚Π΅ΠΌ постСпСнноС сниТСниС Π³Ρ€Π°Ρ„ΠΈΠΊΠ° ΠΈ Π΄Π²Π° Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌΠ° Π½Π° значСниях 170 ΠΈ 220Β». Если ΠΌΡ‹ Π²ΠΎΠ·ΡŒΠΌΡ‘ΠΌ большС Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ² гистограмм ΠΎΡ‚ ΠΏΠΎΡ…ΠΎΠΆΠΈΡ… ΠΊΠ°ΠΏΡ‡, Ρ‚ΠΎ Π·Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ эти Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ ΠΏΠΎ Ρ„ΠΎΡ€ΠΌΠ΅ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‚ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π° с нСбольшими ΠΏΠΎΠ³Ρ€Π΅ΡˆΠ½ΠΎΡΡ‚ΡΠΌΠΈ Π² ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ максимумов ΠΈ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌΠΎΠ² (экстрСмумов). Π’Π°ΠΊ ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π±Ρ‹ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эти значСния для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π²Π΅Π΄ΠΎΠΌΠΎ ΠΎΡ‚ΡΠ΅ΠΊΠ°Ρ‚ΡŒ Π½Π΅ΠΏΠΎΡ…ΠΎΠΆΠΈΠ΅?

ОкСй Π³ΡƒΠ³Π», ΠΊΠ°ΠΊ Π½Π°ΠΉΡ‚ΠΈ экстрСмумы Π² Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅?

import numpy as np
from scipy.signal import argrelextrema
mins = argrelextrema(histogram, np.less)[0]
maxs = argrelextrema(histogram, np.greater)[0]

ОписаниС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ argrelextrema Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ само Π·Π° сСбя: Calculate the relative extrema of data.
Однако, наша гистограмма слишком зубчатая ΠΈ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… экстрСмумов Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ большС, Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ½ΠΎ. НСобходимо ΡΠ³Π»Π°Π΄ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ:

s = numpy.r_[x[window_len-1:0:-1],x,x[-1:-window_len:-1]]

УсрСдняСм Π³Ρ€Π°Ρ„ΠΈΠΊ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠΌ ΡΠΊΠΎΠ»ΡŒΠ·ΡΡ‰Π΅Π³ΠΎ ΠΎΠΊΠ½Π°. Π Π°Π·ΠΌΠ΅Ρ€ ΠΎΠΊΠ½Π° выбирался ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌ ΠΏΡƒΡ‚Π΅ΠΌ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ количСство ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌΠΎΠ² ΠΈΠ»ΠΈ максимумов Π±Ρ‹Π»ΠΎ Π² срСднСм 2, ΠΈ остановился Π½Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ 100 пиксСл. БлСдствиСм Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° являСтся красивый, Π³Π»Π°Π΄ΠΊΠΈΠΉ и… ΡƒΠ΄Π»ΠΈΠ½Π΅Π½Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊ. Π£Π΄Π»ΠΈΠ½Π΅Π½Π½Ρ‹ΠΉ Ρ€ΠΎΠ²Π½ΠΎ Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΎΠΊΠ½Π°.
БоотвСтствСнно ΡΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ экстрСмумов:

mins = array([ 50, 214, 305])
maxs = array([116, 246])

Бтатистика распрСдСлСния экстрСмумов
Бопоставив ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ ΠΏΠΎΡ…ΠΎΠΆΠΈΡ… ΠΊΠ°ΠΏΡ‡ я установил, Ρ‡Ρ‚ΠΎ допустимым ΠΎΡ‚ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ΠΌ ΠΎΡ‚ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΉ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… экстрСмумов Π±ΡƒΠ΄Π΅Ρ‚ 3-4 пиксСла. РСгулируя эту Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρƒ Π² ΠΌΠ΅Π½ΡŒΡˆΡƒΡŽ сторону ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ большСй Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΈ ускорСния Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π·Π° счСт ΡƒΡ…ΡƒΠ΄ΡˆΠ΅Π½ΠΈΡ сТимаСмости.

РазумССтся, Π² ΠΊΠ°ΠΏΡ‡Π°Ρ… ΠΎΡ‚ RuCaptcha ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈ Π±Ρ‹Π»ΠΈ ошибки распознавания. Для Π±ΠΎΡ€ΡŒΠ±Ρ‹ с Π½ΠΈΠΌΠΈ Π±Ρ‹Π»Π° Π²Π²Π΅Π΄Π΅Π½Π° рСйтинговая систСма ΠΊΠ°ΠΏΡ‡. Если md5 Π½ΠΎΠ²ΠΎΠΉ ΠΊΠ°ΠΏΡ‡ΠΈ ΡƒΠΆΠ΅ содСрТится Π² Π±Π°Π·Π΅, Π½ΠΎ с Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ‚ΠΈΠΏΠΎΠΌ инструкции, Ρ‚ΠΎ Ρƒ старой ΠΊΠ°ΠΏΡ‡ΠΈ увСличиваСтся счСтчик failure, Π° Ссли Ρ‚ΠΈΠΏ старой ΠΊΠ°ΠΏΡ‡ΠΈ совпадаСт с Π½ΠΎΠ²Ρ‹ΠΌ, Ρ‚ΠΎ увСличиваСтся счСтчик popularity. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ вводится СстСствСнная Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΠΎΠ²ΠΊΠ° Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Ρ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ β€” ΠΏΡ€ΠΈ поискС ΠΏΠΎΡ…ΠΎΠΆΠΈΡ… ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ°ΠΏΡ‡ΠΈ с popularity > failure.

Мой ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½

Π—Π° всС врСмя ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±Ρ‹Π»ΠΎ собрано Π±ΠΎΠ»Π΅Π΅ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π° Ρ€Π΅ΡˆΠ΅Π½Π½Ρ‹Ρ… ΠΊΠ°ΠΏΡ‡. Для хранСния Π΄Π°Π½Π½Ρ‹Ρ… использовалась Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… PostgreSQL, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΡƒΠ΄ΠΎΠ±Π½ΠΎ Π±Ρ‹Π»ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ…Π΅ΡˆΠΈ ΠΈ массивы Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ гистограмм. К слову ΠΎ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠΈ гистограмм β€” для расчСта растояния ΠΌΠ΅ΠΆΠ΄Ρƒ двумя гистограммами Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ всС 255 + window_size Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. ΠŸΡ€ΠΈ использовании ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρ‹ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ Ρ‚Ρ€Π΅Ρ‚ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ массива Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ расстояния ΠΏΠ°Π΄Π°Π΅Ρ‚ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π·Π°Ρ‚ΠΎ экономится дисковоС пространство.

По Ρ‚Π°ΠΊΠΎΠΉ Π²Ρ‹Π±ΠΎΡ€ΠΊΠ΅ ΠΊΠ°ΠΏΡ‡ статистика Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ Ρ‚ΠΎΡ‡Π½ΠΎΠΉ.

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎ самым «сТимаСмым» ΠΈ самым популярным ΠΊΠ°ΠΏΡ‡Π°ΠΌ (ΠΏΠΎ 3 строчки):

Ρ‚ΠΈΠΏ инструкций				количСство ΠΊΠ°ΠΏΡ‡		количСство Π³Ρ€ΡƒΠΏΠΏ	ΡΠΆΠΈΠΌΠ°Π΅ΠΌΠΎΡΡ‚ΡŒ (%)

кактус					15274			5508			64
трёхколёсныС вСлосипСды			2453			928			62
Π±Π°ΠΉΠ΄Π°Ρ€ΠΊΠΈ				5261			2067			61

Π΄ΠΎΡ€ΠΎΠΆΠ½Ρ‹Π΅ Π·Π½Π°ΠΊΠΈ (Π½Π΅ названия ΡƒΠ»ΠΈΡ†!)	201872			189473			6
Ρ‚Π°Π±Π»ΠΈΡ‡ΠΊΠΈ Π½Π°Π·Π²Π°Π½ΠΈΠΉ ΡƒΠ»ΠΈΡ†			137893			134695			2
Π»ΡŽΠ±Ρ‹Π΅ ΡƒΠ»ΠΈΡ‡Π½Ρ‹Π΅ Π·Π½Π°ΠΊΠΈ			94569			92824			2

Π—Π°ΠΊΠΎΠ½ ΠŸΠ°Ρ€Π΅Ρ‚ΠΎ Π² чистом Π²ΠΈΠ΄Π΅: 11% инструкций Π΄Π°ΡŽΡ‚ ~80% всСх ΠΊΠ°ΠΏΡ‡ (Π° 20% инструкций Π΄Π°ΡŽΡ‚ 91% всСх ΠΊΠ°ΠΏΡ‡). И статистика ΠΎΡ‚Π½ΡŽΠ΄ΡŒ Π½Π΅ Π² ΠΏΠΎΠ»ΡŒΠ·Ρƒ самых сТимаСмых Ρ‚ΠΈΠΏΠΎΠ².

Π‘Π°ΠΌ ΠΆΠ΅ google Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ Ρ‚Π°ΠΊ:
reCAPTCHA uses an advanced risk analysis engine and adaptive CAPTCHAs to keep automated software from engaging in abusive activities on your site.

Every time our CAPTCHAs are solved, that human effort helps digitize text, annotate images, and build machine learning datasets. This in turn helps preserve books, improve maps, and solve hard AI problems.

НамСкая Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ, Ρ‡Π΅Ρ€Π΅Π· Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΏΡ‡ людьми ΠΎΠ½ обСспСчиваСт ΠΈΡ… Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Ρ€ΠΎΡ‚Π°Ρ†ΠΈΡŽ. Google сдСлал ставку Π½Π° нСбольшой Π½Π°Π±ΠΎΡ€ инструкций с Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΌ Ρ€ΠΎΡ‚Π°Ρ†ΠΈΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, Ρ‚Π°ΠΊΠΈΡ…, ΠΊΠ°ΠΊ Π΄ΠΎΡ€ΠΎΠΆΠ½Ρ‹Π΅ Π·Π½Π°ΠΊΠΈ ΠΈΠ»ΠΈ названия ΡƒΠ»ΠΈΡ†.

Π’ Π·Π°Π΄Π°Ρ‡Ρƒ Π½Π΅ Π²Ρ…ΠΎΠ΄ΠΈΠ» ΠΏΡƒΠ½ΠΊΡ‚ ΠΏΡ€ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π½Π° настоящСй Google reCaptcha, поэтому Π² качСствС Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ я Π±ΡƒΠ΄Ρƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ для всСх Π½ΠΎΠ²Ρ‹Ρ… ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΡ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ:

  1. На Π²Ρ…ΠΎΠ΄ поступаСт ΠΊΠ°ΠΏΡ‡Π° 3×3 ΠΈΠ»ΠΈ 4×4 ΠΈ разбиваСтся Π½Π° 9 ΠΈΠ»ΠΈ 16 ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ соотвСтствСнно
  2. По описанным Π²Ρ‹ΡˆΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°ΠΌ для всСх 9 ΠΈΠ»ΠΈ 16 ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ подбираСтся ΠΏΠΎΡ…ΠΎΠΆΠ΅Π΅ ΠΏΠΎ Π’Π‘Π•Πœ Ρ‚ΠΈΠΏΠ°ΠΌ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…
  3. Π˜Π½Π΄Π΅ΠΊΡΡ‹ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΡΡ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ΡΡ с индСксами эталонного Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ
  4. Если Ρ€Π°Π·Π½ΠΈΡ†Π° (количСство Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‰ΠΈΡ…ΡΡ индСксов) ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΠΌΠΈ 50% ΠΈ большС, Ρ‚ΠΎ ΠΊΠ°ΠΏΡ‡Π° считаСтся Π½Π΅Ρ€Π΅ΡˆΠ΅Π½Π½ΠΎΠΉ

На ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ слСва, Ссли Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Π±Π°Π·Ρ‹ (автоматичСскоС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅) говорят, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ индСксы это 0, 1, 3, Π° эталонноС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ это 0, 1, 4, Ρ‚ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‰ΠΈΠΌΠΈΡΡ индСксами Π±ΡƒΠ΄ΡƒΡ‚ индСксы 3 ΠΈ 4. Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ 2 ΡΠΎΠ²ΠΏΠ°ΡŽΡ‰ΠΈΡ… ΠΈ 2 Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… индСкса, Ρ‚.Π΅. ΠΊΠ°ΠΏΡ‡Π° Π½Π΅ Ρ€Π΅ΡˆΠ΅Π½Π°.

Π’Π°ΠΊ ΠΊΠ°ΠΊ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ ΠΊΠ°ΠΏΡ‡ 3×3 ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ 3 (+-1) индСкса, Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ даст схоТиС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹, Ρ‡Ρ‚ΠΎ ΠΈ Π½Π° Π½Π°Ρ‚ΡƒΡ€Π°Π»ΡŒΠ½ΠΎΠΉ reCaptcha.

Π’ ΠΏΡƒΠ½ΠΊΡ‚Π΅ 2 Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΏΠΎΠ΄Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ:

  • Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ изобраТСния Π΄Π΅Π»Π°Ρ‚ΡŒ поиск ΠΏΠΎ Π’Π‘Π•Πœ Ρ‚ΠΈΠΏΠ°ΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π² Π±Π°Π·Π΅ ΠΈ ΠΏΠΎΡ‚ΠΎΠΌ ΠΎΡ‚Π±ΠΈΡ€Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚ΠΈΠΏΡƒ инструкции. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΡƒΠ·Π½Π°Ρ‚ΡŒ статистику Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΠΎ Π½Π΅Ρ†Π΅Π»Π΅Π²Ρ‹ΠΌ изобраТСниям Ρ‚ΠΎΠΆΠ΅, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ влияниС Π»ΠΎΠΆΠ½Ρ‹Ρ… срабатываний Π½Π° Π²Π΅Ρ€Π½ΠΎΡΡ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ.
  • Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ изобраТСния ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ поиск Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ Ρ‚ΠΈΠΏΡƒ инструкции. Π’Π°ΠΊΠΎΠΉ поиск Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ быстрСС ΠΈ Π½Π΅ Π΄Π°Π΅Ρ‚ Π»ΠΎΠΆΠ½Ρ‹Ρ… срабатываний ΠΎΡ‚ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ способа Π²ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅.

НиТС собрана Π΄ΠΈΠ½Π°ΠΌΠΈΠΊΠ° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² разгадывания Π·Π° нСсколько Π΄Π½Π΅ΠΉ:
Π’ срСднСм, собранная систСма Ρ€Π°Π·Π³Π°Π΄Ρ‹Π²Π°Π»Π° Π³ΡƒΠ³Π»ΠΎΠ²Ρ‹Π΅ ΠΊΠ°ΠΏΡ‡ΠΈ с Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ 12.5%, Ρ‚Π΅ΠΌ самым приводя вСсомый Π΄ΠΎΠ²ΠΎΠ΄ Π² ΠΏΠΎΠ»ΡŒΠ·Ρƒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Google.

К ΠΌΠΎΠ΅ΠΌΡƒ ΡƒΠ΄ΠΈΠ²Π»Π΅Π½ΠΈΡŽ, Π»ΠΈΠ΄Π΅Ρ€ΠΎΠΌ ΠΏΠΎ количСству Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ стала ΠΎΠ΄Π½Π° ΠΈΠ· самых плохосТимаСмых ΠΊΠ°ΠΏΡ‡ (статистика Π·Π° нСсколько Π²Ρ‹Π±ΠΎΡ€ΠΎΠΊ):

Ρ‚ΠΈΠΏ					Ρ€Π°Π·Π³Π°Π΄Ρ‹Π²Π°Π΅ΠΌΠΎΡΡ‚ΡŒ	Ρ€Π°Π·Π³Π°Π΄Ρ‹Π²Π°Π΅ΠΌΠΎΡΡ‚ΡŒ (%)	ΡΠΆΠΈΠΌΠ°Π΅ΠΌΠΎΡΡ‚ΡŒ (%)
Π»ΡŽΠ±Ρ‹Π΅ ΡƒΠ»ΠΈΡ‡Π½Ρ‹Π΅ Π·Π½Π°ΠΊΠΈ			142		14.03			2
Π΄ΠΎΡ€ΠΎΠΆΠ½Ρ‹Π΅ Π·Π½Π°ΠΊΠΈ (Π½Π΅ названия ΡƒΠ»ΠΈΡ†!)	80		7.91			6
ΠΏΠ°Π»ΡŒΠΌΡ‹					68		6.72			40
ΠΏΠΈΠΊΠ°ΠΏΡ‹ (лСгковая машина с ΠΊΡƒΠ·ΠΎΠ²ΠΎΠΌ)	58		5.73			43
ΠΆΠΈΠ»ΠΎΠΉ Π°Π²Ρ‚ΠΎΡ„ΡƒΡ€Π³ΠΎΠ½ (Π΄ΠΎΠΌ Π½Π° колСсах)	58		5.73			43
названия ΡƒΠ»ΠΈΡ†				57		5.63			43

А Π½Π΅Ρ†Π΅Π»Π΅Π²Ρ‹Ρ… ΠΊΠ°ΠΏΡ‡ Π½Π°Ρ…ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ Ρ‡ΡƒΡ‚ΡŒ большС (55%), Ρ‡Π΅ΠΌ Ρ†Π΅Π»Π΅Π²Ρ‹Ρ… (45%). Π¦Π΅Π»Π΅Π²Ρ‹ΠΌΠΈ ΠΊΠ°ΠΏΡ‡Π°ΠΌΠΈ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Ρ‚Π΅, изобраТСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΈ поискС срСди всСй Π‘Π” (Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ Ρ‚ΠΈΠΏΡƒ инструкции) ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ находятся ΠΈ ΠΈΡ… Ρ‚ΠΈΠΏ соотвСтствуСт Ρ‚ΠΈΠΏΡƒ инструкции ΠΊΠ°ΠΏΡ‡ΠΈ. Π˜Π½Ρ‹ΠΌΠΈ словами β€” Π² срСднСй ΠΊΠ°ΠΏΡ‡Π΅ 3Ρ…3 ΠΏΡ€ΠΎ Π»ΠΈΠΌΡƒΠ·ΠΈΠ½Ρ‹ находится 3 изобраТСния с Π»ΠΈΠΌΡƒΠ·ΠΈΠ½Π°ΠΌΠΈ ΠΈ Π΅Ρ‰Ρ‘ 3.66 изобраТСния с Π»ΡŽΠ±Ρ‹ΠΌΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ.

ИсслСдованиС ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π° основС ΠΏΠ΅Ρ€Ρ†Π΅ΠΏΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ Ρ…Π΅ΡˆΠ° ΠΈ гистограмм Ρ†Π²Π΅Ρ‚ΠΎΠ² нСльзя ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ систСму Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΏΡ‡, Π΄Π°ΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΎΠ³Ρ€ΠΎΠΌΠ½Ρ‹Π΅ ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠ΅ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ. Π’Π°ΠΊΠΎΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ reCapthca достигаСтся Π·Π° счСт Π΄ΠΎΠ»ΠΆΠ½ΠΎΠΉ Ρ€ΠΎΡ‚Π°Ρ†ΠΈΠΈ самых популярных Ρ‚ΠΈΠΏΠΎΠ² ΠΊΠ°ΠΏΡ‡.

Π― Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ RuCaptcha Π·Π° приятноС ΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ ΠΈ с ΠΈΡ… позволСния Π²Ρ‹ΠΊΠ»Π°Π΄Ρ‹Π²Π°ΡŽ ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΡƒΡŽ Π²Ρ‹Π±ΠΎΡ€ΠΊΡƒ Π² ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ доступ Π½Π° yandex диск (ΡΠΏΠ΅ΡˆΠΈΡ‚Π΅ ΡΠΊΠ°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ, диск ΠΏΡ€ΠΎΠΏΠ»Π°Ρ‡Π΅Π½ Π½Π° мСсяц):

  1. yadi.sk/d/CNJQ5uOwqfykL
  2. yadi.sk/d/gnTU-qwnqfykM
  3. yadi.sk/d/6vTTjhJaqfykV

Yandex диск Π½Π΅ ΡƒΠΌΠ΅Π΅Ρ‚ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ большС 10 Π³ΠΈΠ³Π°Π±Π°ΠΉΡ‚, поэтому исслСдоватСлСй ΠΆΠ΄Π΅Ρ‚ Π·Π°Π΄Π°Ρ‡Π° склСйки tar Π°Ρ€Ρ…ΠΈΠ²Π° ΠΈΠ· 3Ρ… частСй.

МСня Π½Π΅ ΠΏΠΎΠΊΠΈΠ΄Π°ΡŽΡ‚ мысли ΠΎ машинном ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠΈ Π½Π° Ρ‚ΠΎΠΉ ΠΆΠ΅ самой Π²Ρ‹Π±ΠΎΡ€ΠΊΠ΅ πŸ™‚ А ΠΏΠΎΠΊΠ° Ρ‡Ρ‚ΠΎ дСлюсь исходным ΠΊΠΎΠ΄ΠΎΠΌ систСмы Π½Π° python.

ReCaptcha — 2Captcha FAQ

Π’Π°ΠΆΠ½ΠΎΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅: Π­Ρ‚Π° страница содСрТит наш Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Ρ€Π΅ΠΊΠ°ΠΏΡ‡ΠΈ V2. Если это ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ Π½Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для Π²Π°ΡˆΠΈΡ… Ρ†Π΅Π»Π΅ΠΉ, ΠΌΡ‹ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌ Π½ΠΎΠ²Ρ‹ΠΉ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π±Π΅Π· нСобходимости эмуляции Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.
Π—Π΄Π΅ΡΡŒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ всС Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свСдСния ΠΈ ΠΏΠΎΡˆΠ°Π³ΠΎΠ²ΡƒΡŽ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ ΠΏΠΎ использованию Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° .

ОсновноС Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ нашими ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π½Π°ΠΌ изобраТСния ΠΊΠ°ΠΏΡ‡ΠΈ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ способом, Π° Ρ€Π°Π±ΠΎΡ‚Π½ΠΈΠΊΠΈ Ρ€Π΅ΡˆΠ°ΡŽΡ‚ ваши ΠΊΠ°ΠΏΡ‡ΠΈ прямо Π½Π° сайтС, Π³Π΄Π΅ ΠΎΠ½ΠΈ Π²Π°ΠΌ Π½ΡƒΠΆΠ½Ρ‹.ПослС послСднСго обновлСния ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠ°ΠΏΡ‡ΠΈ Π½Π° Π±ΠΎΠ»Π΅Π΅ ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… ΠΈ популярных сайтах ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ 100% Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ.

ReCaptcha Π’Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄

Наш сСрвис ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ распознаваниС Π½ΠΎΠ²ΠΎΠΉ ReCaptcha v2 (ASIRA), Π³Π΄Π΅ Π²Ρ‹ ставитС Π³Π°Π»ΠΎΡ‡ΠΊΡƒ ΠΈ Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.
ΠœΡ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌ 9 ΠΈ 16 ΠΊΠ°ΠΏΡ‡ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ 3×3 ΠΈ 4×4 google recaptchas.

Π‘Ρ…Π΅ΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹:
1) Π‘Ρ‚Π°Π²ΠΈΡˆΡŒ Π³Π°Π»ΠΎΡ‡ΠΊΡƒ.
2) ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ + инструкция.
3) ΠžΡ‚ΠΏΡ€Π°Π²ΡŒΡ‚Π΅ Π½Π°ΠΌ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ + ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ.
4) ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΎΡ‚ нас ID captcha.
5) Π§Π΅Ρ€Π΅Π· 5 сСкунд ΠΏΠΎΠ΄Π°ΠΉΡ‚Π΅ заявку Π½Π° ΠΎΡ‚Π²Π΅Ρ‚ ΠΏΠΎ ΠΊΠ°ΠΏΡ‡Π΅.
6) Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ числовыС ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π½ΡƒΠΆΠ½ΠΎ Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Π³Π°Π΄Π°Ρ‚ΡŒ ΠΊΠ°ΠΏΡ‡Ρƒ.
7) Π©Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠΏΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ изобраТСниям.

Captcha отправляСтся Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ CAPTCHA (см. Наш API), Π½ΠΎ с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ полями

Captcha 9 \ 16 ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΎΠ² + ΠžΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ тСкстовыС инструкции с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ:
recaptcha = 1
textinstructions =% TEXT%
Π“Π΄Π΅% TEXT% — тСкст, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ (Π΄ΠΎΡ€ΠΎΠΆΠ½Ρ‹Π΅ Π·Π½Π°ΠΊΠΈ, Π΄Π΅Ρ€Π΅Π²ΡŒΡ, ΠΏΠΎΠ΄Π°Ρ€ΠΎΠΊ, Π·Π½Π°ΠΊ ΠΈ Ρ‚. Π”.))

Captcha 9 \ 16 ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΎΠ² + ΠžΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ инструкции изобраТСния Π² «Ρ„Π°ΠΉΠ»» изобраТСния
recaptcha = 1
imginstructions = img
Π“Π΄Π΅ Β«imgΒ» — это инструкции ΠΊ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ°ΠΌ. Он ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ multipart ΠΈΠ»ΠΈ base64

Π Π°Π±ΠΎΡ‡ΠΈΠ΅ 2Captcha — люди, поэтому ΠΎΠ½ΠΈ Π²Ρ‹Π±ΠΈΡ€Π°ΡŽΡ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ изобраТСния для Ρ‰Π΅Π»Ρ‡ΠΊΠ°, ΠΈ Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΎΡ‚Π²Π΅Ρ‚:
ОК | Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅: 1/2/10/14

ВрСбования, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹Π΅ Π² CAPTCHA, ΠΈ ΠΎΠ±Ρ€Π°Π·Π΅Ρ† тСкста:
-CAPTCHA Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π»ΠΈΠ±ΠΎ 300x300px, Π»ΠΈΠ±ΠΎ 600x600px, Π»ΠΈΠ±ΠΎ 632x632px
-ΠšΠ°ΠΏΡ‚Ρ‡ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°, Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ 300Ρ…300 — сСтка 9 ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΎΠ², Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ 600Ρ…600 ΠΈΠ»ΠΈ 632x632px — сСтка 16 ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΎΠ²
-CAPTCHA Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ мСньшС 100 ΠšΠ‘
-textinstructions я Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΈΠΉΡ‚ΠΈ Π² ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ΅ UTF-8
-textinstructions Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹Π΅ Π² CAPTCHA
-imginstruction Π½Π΅ Π±ΠΎΠ»Π΅Π΅ 100x100px
-imginstruction Π”ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ мСньшС 25 ΠšΠ‘

ΠžΠ±Ρ€Π°Π·Π΅Ρ† Ρ„ΠΎΡ€ΠΌΡ‹ для Zeennoposter http: // zennolab.com / Discussion / Threads / proekt-dlja-raspoznavanija-google-recaptcha-2-s-pomoschju-rucaptcha-dlja-zennoposter-5.22571 / page-8 # post-166204

.

ΠžΠ±Ρ…ΠΎΠ΄ reCAPTCHA с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ 2Captcha — 2Captcha FAQ

Google постоянно Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π°Π΄ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ΠΌ своСго Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Ρ€Π΅ΠΊΠ°ΠΏΡ‡ΠΈ, Ρ‡Ρ‚ΠΎ, СстСствСнно, ΠΏΠΎΠ±ΡƒΠΆΠ΄Π°Π΅Ρ‚ нас Ρ‚Π°ΠΊΠΆΠ΅ Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ.

На Π²Π΅Π±-сайтах, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… этот Π½ΠΎΠ²Ρ‹ΠΉ API, Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ количСство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ смогут бСзопасно ΠΈ Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ люди, Π±Π΅Π· нСобходимости Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ CAPTCHA. ВмСсто этого всСго ΠΎΠ΄Π½ΠΈΠΌ Ρ‰Π΅Π»Ρ‡ΠΊΠΎΠΌ ΠΎΠ½ΠΈ подтвСрдят, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π½Π΅ Ρ€ΠΎΠ±ΠΎΡ‚.

— Google Security

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ людСй Π½Π΅ видят эту CAPTCHA, особСнно Ссли ΠΎΠ½ΠΈ вошли Π² систСму с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Google.Другая большая Ρ‡Π°ΡΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ просто ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ„Π»Π°ΠΆΠΎΠΊ Β«Π― Π½Π΅ Ρ€ΠΎΠ±ΠΎΡ‚Β», Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ тСст, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΈΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ изобраТСния. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ этот Ρ‚ΠΈΠΏ CAPTCHA Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ слоТнСС ΠΎΠ±ΠΎΠΉΡ‚ΠΈ ΠΈΠ»ΠΈ Π²Π·Π»ΠΎΠΌΠ°Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ слуТбами Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ CAPTCHA.

НС Ρ‚Π°ΠΊ Π΄Π°Π²Π½ΠΎ Google ΠΎΠ±Π½ΠΎΠ²ΠΈΠ» ReCaptcha V2 с Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠΎΠΉ вСрсиСй. ΠœΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ нСсколько подсказок ΠΎΠ± этом Ρ‚ΠΈΠΏΠ΅ ReCaptcha. ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, ΠΏΡ€ΠΎΡ‡Ρ‚ΠΈΡ‚Π΅ здСсь.

ΠœΡ‹ Π² 2Captcha ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌ Π²Π°ΠΌ 2 Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄Π° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π½ΠΎΠ²Ρ‹ΠΌ Google recaptchaV2:

  1. Наш Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΠΉ эмуляции Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.
    Π¦Π΅Π½Π°: 1,20 $ Π·Π° 1000 Ρ€Π΅ΡˆΠ΅Π½Π½Ρ‹Ρ… Ρ€Π΅ΠΊΠ°ΠΏΡ‡
  2. Π‘ΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½ΠΎΠ²Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π±Π΅Π· эмуляции Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° ΠΈ со 100% Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ.
    Π¦Π΅Π½Π°: $ 2,99 Π·Π° 1000 Ρ€Π΅ΡˆΠ΅Π½Π½Ρ‹Ρ… Ρ€Π΅ΠΊΠ°ΠΏΡ‡

ОсновноС Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ этими ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π½Π°ΠΌ изобраТСния ΠΊΠ°ΠΏΡ‡ΠΈ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ способом, Π° Ρ€Π°Π±ΠΎΡ‚Π½ΠΈΠΊΠΈ Ρ€Π΅ΡˆΠ°ΡŽΡ‚ ваши ΠΊΠ°ΠΏΡ‡ΠΈ прямо Π½Π° сайтС, Π³Π΄Π΅ ΠΎΠ½ΠΈ Π²Π°ΠΌ Π½ΡƒΠΆΠ½Ρ‹. ПослС послСднСго обновлСния ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠ°ΠΏΡ‡ΠΈ Π½Π° Π±ΠΎΠ»Π΅Π΅ ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… ΠΈ популярных сайтах ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ 100% .

2Captcha — это автоматизированная слуТба тормоТСния CAPTCHA с API, которая ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π²Π΅Π±-мастСрам ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚ΠΎΠ»ΠΎΠ³Π°ΠΌ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ большиС ΠΎΠ±ΡŠΠ΅ΠΌΡ‹ CAPTCHA людям, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡ… Ρ€Π΅ΡˆΠ°ΡŽΡ‚. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚ΠΎΠ»ΠΎΠ³ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ приходится Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΎΠ½Π»Π°ΠΉΠ½-Π·Π°Π΄Π°Ρ‡ΠΈ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, ΡƒΠΆΠ΅ ΠΎΡ†Π΅Π½ΠΈΠ»ΠΈ удобство Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΠ½Π»Π°ΠΉΠ½-активности с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ 2Captcha. НСт нСобходимости ΠΈΠΌΠ΅Ρ‚ΡŒ Π½Π°Π²Ρ‹ΠΊΠΈ написания ΠΊΠΎΠ΄Π°. Π‘Π°Π·ΠΎΠ²Ρ‹Ρ… тСхничСских Π·Π½Π°Π½ΠΈΠΉ ΠΎ ПО для SEO Π²ΠΏΠΎΠ»Π½Π΅ достаточно, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ сСрвисом. Если Ρƒ вас Π΅ΡΡ‚ΡŒ вопросы, просмотритС наш FAQ ΠΈΠ»ΠΈ Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ Π½Π°ΠΌ Π² слуТбу ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ.

.

Leave a Comment

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *