К ΡΡ‚Π°Ρ‚ΡŒΠ΅
ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»

Π”Ρ€ΡƒΠ³ΠΎΠ΅ Β· 11 ΠΌΠΈΠ½

Как ΠΏΠ°Ρ€ΡΠΈΡ‚ΡŒ Авито Π±Π΅Π· Π±Π°Π½Π°: инструкция ΠΏΠΎ ΠΎΠ±Ρ…ΠΎΠ΄Ρƒ Π·Π°Ρ‰ΠΈΡ‚Ρ‹

Как ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ с Авито Π±Π΅Π· Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ IP. Настройка прокси, User-Agent, Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ ΠΈ Ρ€ΠΎΡ‚Π°Ρ†ΠΈΠΈ ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠΎΠ² для бСзопасной Ρ€Π°Π±ΠΎΡ‚Ρ‹ парсСра.

Π‘Π±ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ… с популярных досок объявлСний β€” слоТная тСхничСская Π·Π°Π΄Π°Ρ‡Π° ΠΈΠ·-Π·Π° агрСссивных систСм Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ сбора ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΡƒΡŽ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡŽ Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ°, анализируя ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ запросов ΠΈ Ρ€Π΅ΠΏΡƒΡ‚Π°Ρ†ΠΈΡŽ IP-адрСса. ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ большой массив Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ скриптом Π±Π΅Π· ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ ΠΏΠΎΡ‡Ρ‚ΠΈ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎΠΉ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ΅ ΠΏΠΎ IP ΠΈΠ»ΠΈ появлСнию ΠΊΠ°ΠΏΡ‡ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ стандартныС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ.

Π­Ρ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ парсинг Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΈΠΌΠΈΡ‚Π°Ρ†ΠΈΠΈ дСйствий Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ° ΠΈ использования распрСдСлСнной инфраструктуры. ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌΠΈ Ρ„Π°ΠΊΡ‚ΠΎΡ€Π°ΠΌΠΈ успСха ΡΠ²Π»ΡΡŽΡ‚ΡΡ качСствСнная ротация прокси-сСрвСров, коррСктная настройка Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² запросов ΠΈ соблюдСниС Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»ΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ обращСниями ΠΊ сСрвСру. Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠΉ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΈ отсутствия Π±Π°Π½Π° Π½Π΅ сущСствуСт, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ постоянно ΠΎΠ±Π½ΠΎΠ²Π»ΡΡŽΡ‚ΡΡ, Π½ΠΎ соблюдСниС ΠΏΡ€Π°Π²ΠΈΠ» Β«Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ Π³ΠΈΠ³ΠΈΠ΅Π½Ρ‹Β» позволяСт Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠ΄Π»ΠΈΡ‚ΡŒ Тизнь скрипта.

Анализ Π·Π°Ρ‰ΠΈΡ‚Π½Ρ‹Ρ… ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΊΠΈ

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

Π”Ρ€ΡƒΠ³ΠΈΠΌ Π²Π°ΠΆΠ½Ρ‹ΠΌ слоСм Π·Π°Ρ‰ΠΈΡ‚Ρ‹ являСтся ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² HTTP-запроса. Π‘Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ спСцифичСский Π½Π°Π±ΠΎΡ€ ΠΏΠΎΠ»Π΅ΠΉ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Accept-Language, Accept-Encoding ΠΈ Referer. Π‘ΠΊΡ€ΠΈΠΏΡ‚Ρ‹ Π½Π° Python с использованиСм Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Requests ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² ΠΈΠ»ΠΈ вовсС стандартныС значСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ сразу Π²Ρ‹Π΄Π°ΡŽΡ‚ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ инструмСнт. ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Referer ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ страницами сайта Ρ‚Π°ΠΊΠΆΠ΅ являСтся красным Ρ„Π»Π°Π³ΠΎΠΌ для систСмы бСзопасности.

HTTP статус403 Forbidden

Π‘Π΅Ρ€Π²Π΅Ρ€ явно Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ доступ с вашСго IP

ΠšΠΎΠ½Ρ‚Π΅Π½Ρ‚Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° с ΠΊΠ°ΠΏΡ‡Π΅ΠΉ

ВрСбуСтся ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½Π΅ Ρ€ΠΎΠ±ΠΎΡ‚

ΠŸΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅Π‘Π΅ΡΠΊΠΎΠ½Π΅Ρ‡Π½Π°Ρ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ°

JS-скрипты Π±Π»ΠΎΠΊΠΈΡ€ΡƒΡŽΡ‚ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ½Π³ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° для Π±ΠΎΡ‚Π°

Π’Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π°Π½Π°Π»ΠΈΠ· ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠ° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° (Browser Fingerprinting). Π”Π°ΠΆΠ΅ Ссли Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Selenium ΠΈΠ»ΠΈ Puppeteer, стандартныС настройки этих инструмСнтов часто содСрТат слСды Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ. НапримСр, Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ свойства `navigator.webdriver` со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ `true` ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ Π²Ρ‹Π΄Π°Π΅Ρ‚ Π±ΠΎΡ‚Π°. Π‘ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ систСмы Π·Π°Ρ‰ΠΈΡ‚Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ WebGL, Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ экрана ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ установлСнных ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ², сравнивая ΠΈΡ… с Π±Π°Π·ΠΎΠΉ извСстных ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ².

Настройка сСтСвого окруТСния ΠΈ прокси

ИспользованиС прокси-сСрвСров являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ условиСм для любого ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎΠ³ΠΎ парсинга. ΠžΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ домашниС IP-адрСса ΠΈΠ»ΠΈ Π΄Π΅ΡˆΠ΅Π²Ρ‹Π΅ Π΄Π°Ρ‚Π°-Ρ†Π΅Π½Ρ‚Ρ€ΠΎΠ²Ρ‹Π΅ прокси быстро ΠΏΠΎΠΏΠ°Π΄Π°ΡŽΡ‚ Π² Ρ‡Π΅Ρ€Π½Ρ‹Π΅ списки, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΡ… подсСти часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ°ΠΌΠΈ. Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΡ€ΡƒΠΏΠ½Ρ‹ΠΌΠΈ досками объявлСний Π½Π°ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ прокси.

ΠœΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ прокси ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ IP-адрСса Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ². Π­Ρ‚ΠΈ адрСса ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ±Ρ‰ΠΈΠΌΠΈ для тысяч ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, поэтому высокая Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ с ΠΎΠ΄Π½ΠΎΠ³ΠΎ IP выглядит СстСствСнно. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΡŽ CGNAT, Ρ‡Ρ‚ΠΎ позволяСт ΠΌΠ΅Π½ΡΡ‚ΡŒ IP-адрСс Π±Π΅Π· Ρ€Π°Π·Ρ€Ρ‹Π²Π° соСдинСния ΠΈΠ»ΠΈ ΠΏΠΎ запросу, обСспСчивая Π²Ρ‹ΡΠΎΠΊΡƒΡŽ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΎΡΡ‚ΡŒ.

ΠŸΡ€ΠΈ настройкС Ρ€ΠΎΡ‚Π°Ρ†ΠΈΠΈ Π²Π°ΠΆΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ гСографичСскоС соотвСтствиС. Если Π²Ρ‹ парситС объявлСния ΠΏΠΎ МосквС, ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ прокси Ρ‚Π°ΠΊΠΆΠ΅ Π±Ρ‹Π»ΠΈ зарСгистрированы Π² Московском Ρ€Π΅Π³ΠΈΠΎΠ½Π΅ ΠΈΠ»ΠΈ хотя Π±Ρ‹ Π² России. РСзкая смСна Π³Π΅ΠΎΠ»ΠΎΠΊΠ°Ρ†ΠΈΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, запрос ΠΈΠ· Π‘ΠΈΠ±ΠΈΡ€ΠΈ, Π° Ρ‡Π΅Ρ€Π΅Π· ΠΌΠΈΠ½ΡƒΡ‚Ρƒ ΠΈΠ· ΠšΠ°Π»ΠΈΠ½ΠΈΠ½Π³Ρ€Π°Π΄Π°) ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΎΠ·Ρ€Π΅Π½ΠΈΠ΅ Ρƒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² бСзопасности ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒ прохоТдСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ.

Ротация Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ запросами, Π½ΠΎ ΠΈ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΎΠ΄Π½ΠΎΠΉ сСссии. Π₯ΠΎΡ€ΠΎΡˆΠ΅ΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠΉ считаСтся смСна IP послС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ 5–10 запросов ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠΈ любой ошибки, ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠΉ ΠΎΡ‚ 200 OK. Π­Ρ‚ΠΎ позволяСт Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ риск Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ всСй ΠΏΡƒΠ»Π° адрСсов ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ.

Эмуляция Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° ΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ²

Для динамичСских сайтов, Π³Π΄Π΅ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ подгруТаСтся Ρ‡Π΅Ρ€Π΅Π· JavaScript, использованиС простых HTTP-ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² часто нСдостаточно. НСобходимо ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ инструмСнты Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Selenium, Playwright ΠΈΠ»ΠΈ Puppeteer. Однако стандартный запуск этих инструмСнтов Π»Π΅Π³ΠΊΠΎ дСтСктируСтся.

НСобходимо ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΠ°Ρ‚Ρ‡ΠΈ для скрытия ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ² Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ. Π’ случаС с Selenium для Python ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, undetected-chromedriver), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‚ Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, убирая ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ. Π­Ρ‚ΠΎ позволяСт скрипту Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ экзСмпляр Chrome.

python
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options = Options()
options.add_argument('--disable-blink-features=AutomationControlled')
options.add_experimental_option('excludeSwitches', ['enable-automation'])
options.add_experimental_option('useAutomationExtension', False)

driver = webdriver.Chrome(options=options)
driver.execute_script("Object.defineProperty(navigator, 'webdriver', {get: () => undefined})")

Помимо скрытия Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ, критичСски Π²Π°ΠΆΠ½ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ User-Agent строки Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ². Π˜Ρ… ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ€Π°Ρ‚ΡŒ ΠΈΠ· сСрвисов, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… Π±Π°Π·Ρƒ послСдних вСрсий. Π’Π°ΠΊΠΆΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ `Accept`, `Accept-Language`, `Accept-Encoding` ΠΈ `Upgrade-Insecure-Requests`, значСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΌΡƒ User-Agent.

Для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ достовСрности эмуляции ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ cookies ΠΈ локального Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° ΠΌΠ΅ΠΆΠ΄Ρƒ сСссиями создаСт ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ посСщСний, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π±ΠΎΡ‚Π° Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ Π½Π° чСловСчСскоС. Однако Π±ΡƒΠ΄ΡŒΡ‚Π΅ остороТны: использованиС ΠΎΠ΄Π½ΠΈΡ… ΠΈ Ρ‚Π΅Ρ… ΠΆΠ΅ cookies с Ρ€Π°Π·Π½Ρ‹Ρ… IP-адрСсов ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΎΠ·Ρ€Π΅Π½ΠΈΠ΅.

Алгоритмы Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ ΠΈ повСдСния

Π›ΠΈΠ½Π΅ΠΉΠ½Ρ‹Π΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, `sleep(5)` послС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ запроса) ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π³Π»Π°Π²Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ² Π±ΠΎΡ‚Π°. Π›ΡŽΠ΄ΠΈ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΊΠ°ΠΊ ΠΌΠ΅Ρ‚Ρ€ΠΎΠ½ΠΎΠΌ: ΠΎΠ½ΠΈ Ρ‡ΠΈΡ‚Π°ΡŽΡ‚ тСкст, скроллят страницу, ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‚ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ ΠΈ Π΄Π΅Π»Π°ΡŽΡ‚ ΠΏΠ°ΡƒΠ·Ρ‹ Ρ€Π°Π·Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹. Π’Π°Ρˆ скрипт Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠΈΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ эту Ρ…Π°ΠΎΡ‚ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ случайныС ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Ρ‹ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ с Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΈΠ»ΠΈ ΡΠΊΡΠΏΠΎΠ½Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ распрСдСлСниСм. ВмСсто фиксированной ΠΏΠ°ΡƒΠ·Ρ‹ Π² 5 сСкунд настройтС Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΎΡ‚ 3 Π΄ΠΎ 12 сСкунд. Π’Π°ΠΊΠΆΠ΅ внСдряйтС Β«ΠΌΠ΅Ρ€Ρ‚Π²ΠΎΠ΅ врСмя» β€” ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Ρ‹ бСздСйствия, ΠΊΠΎΠ³Π΄Π° скрипт Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π΄Π΅Π»Π°Π΅Ρ‚ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΌΠΈΠ½ΡƒΡ‚, имитируя Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ объявлСния ΠΈΠ»ΠΈ ΠΎΡ‚Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

ΠŸΠΎΡ€ΡΠ΄ΠΎΠΊ настройки Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ
  1. 1
    УстановитС Π±Π°Π·ΠΎΠ²ΡƒΡŽ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΌΠ΅ΠΆΠ΄Ρƒ запросами 3-5 сСкунд
  2. 2
    Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΡΠ»ΡƒΡ‡Π°ΠΉΠ½ΡƒΡŽ Π²Π°Ρ€ΠΈΠ°Ρ†ΠΈΡŽ +/- 40% ΠΊ Π±Π°Π·ΠΎΠ²ΠΎΠΌΡƒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ
  3. 3
    Π’Π½Π΅Π΄Ρ€ΠΈΡ‚Π΅ Π΄ΠΎΠ»Π³ΠΈΠ΅ ΠΏΠ°ΡƒΠ·Ρ‹ (1-3 ΠΌΠΈΠ½ΡƒΡ‚Ρ‹) послС ΠΊΠ°ΠΆΠ΄Ρ‹Ρ… 10-20 страниц
  4. 4
    Π‘ΠΈΠΌΡƒΠ»ΠΈΡ€ΡƒΠΉΡ‚Π΅ скроллинг страницы ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠΌ ΠΏΠΎ ссылкС

ΠŸΠΎΠ²Π΅Π΄Π΅Π½Ρ‡Π΅ΡΠΊΠΈΠ΅ Ρ„Π°ΠΊΡ‚ΠΎΡ€Ρ‹ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π² сСбя Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΌΡ‹ΡˆΠΈ ΠΈ скроллинг. ΠŸΡ€ΠΈ использовании инструмСнтов Π²Ρ€ΠΎΠ΄Π΅ Playwright ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ события двиТСния курсора ΠΏΠΎ ΠΊΡ€ΠΈΠ²Ρ‹ΠΌ Π‘Π΅Π·ΡŒΠ΅, Π° Π½Π΅ ΠΏΠΎ прямым линиям. Π‘ΠΊΡ€ΠΎΠ»Π»ΠΈΠ½Π³ страницы Π²Π½ΠΈΠ· ΠΈ Π²Π²Π΅Ρ€Ρ… ΠΏΠ΅Ρ€Π΅Π΄ ΠΊΠ»ΠΈΠΊΠΎΠΌ Π½Π° элСмСнт Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ сниТаСт Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ дСтСктирования, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π·Π°Ρ‰ΠΈΡ‚Π½Ρ‹Π΅ скрипты ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°ΡŽΡ‚ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ элСмСнта Π² области просмотра ΠΏΠ΅Ρ€Π΅Π΄ взаимодСйствиСм.

Π’Π°ΠΆΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ ΠΎΠ±Ρ…ΠΎΠ΄Π° ΠΏΠ°Π³ΠΈΠ½Π°Ρ†ΠΈΠΈ. НС ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ строго Π½Π° страницу 1, Π·Π°Ρ‚Π΅ΠΌ 2, Π·Π°Ρ‚Π΅ΠΌ 3. ЧСловСчСскоС ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ часто Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ Π½Π°Π·Π°Π΄, ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ объявлСний Π² Π½ΠΎΠ²Ρ‹Ρ… Π²ΠΊΠ»Π°Π΄ΠΊΠ°Ρ… ΠΈ Ρ…Π°ΠΎΡ‚ΠΈΡ‡Π½ΠΎΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅. РСализация Ρ‚Π°ΠΊΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ услоТняСт ΠΊΠΎΠ΄, Π½ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ ΡƒΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ ΠΊ Π±Π°Π½Π°ΠΌ.

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок ΠΈ ΠΊΠ°ΠΏΡ‡ΠΈ

НСсмотря Π½Π° всС ΠΌΠ΅Ρ€Ρ‹ прСдостороТности, появлСниС ΠΊΠ°ΠΏΡ‡ΠΈ ΠΈΠ»ΠΈ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎ ΠΏΡ€ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΌΠ°Ρ… сбора Π΄Π°Π½Π½Ρ‹Ρ…. Π’Π°Ρˆ парсСр Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ спроСктирован Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ эти ситуации, Π° Π½Π΅ ΠΏΠ°Π΄Π°Ρ‚ΡŒ с ошибкой.

Основной ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ β€” Π΄Π΅Ρ‚Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ измСнСния структуры страницы. Если вмСсто списка Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ² Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ HTML с Ρ„ΠΎΡ€ΠΌΠΎΠΉ Π²Π²ΠΎΠ΄Π° ΠΊΠΎΠ΄Π° ΠΈΠ»ΠΈ сообщСниСм ΠΎ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ΅, скрипт Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ сСссию, ΡΠΌΠ΅Π½ΠΈΡ‚ΡŒ прокси ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ с Π½ΠΎΠ²Ρ‹ΠΌ ΠΏΡ€ΠΎΡ„ΠΈΠ»Π΅ΠΌ.

ΠœΠ°Ρ€ΡˆΡ€ΡƒΡ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ

РСакция Π½Π° Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΡƒ

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ статус 403 ΠΈΠ»ΠΈ 429НСмСдлСнно смСнитС прокси ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡ΡŒΡ‚Π΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ Π² 2 Ρ€Π°Π·Π°
Появилась страница с ΠΊΠ°ΠΏΡ‡Π΅ΠΉΠžΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚Π΅ парсинг с этого IP, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ сСрвис разгадывания ΠΈΠ»ΠΈ смСнитС ΡΡ‚Ρ€Π°Ρ‚Π΅Π³ΠΈΡŽ
ΠšΠΎΠ½Ρ‚Π΅Π½Ρ‚ Π½Π΅ загруТаСтся (пустой список)ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ сСлСкторов ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ JS-ошибок Π² консоли

Для автоматичСского Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΏΡ‡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ сторонниС сСрвисы (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 2Captcha ΠΈΠ»ΠΈ Anticaptcha). Они ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ API, ΠΊΡƒΠ΄Π° отправляСтся ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Ρ‚ΠΎΠΊΠ΅Π½ ΠΊΠ°ΠΏΡ‡ΠΈ, Π° Π² ΠΎΡ‚Π²Π΅Ρ‚ возвращаСтся Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. Π­Ρ‚ΠΎ замСдляСт процСсс парсинга ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ, Π½ΠΎ позволяСт ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π±Π΅Π· Ρ€ΡƒΡ‡Π½ΠΎΠ³ΠΎ Π²ΠΌΠ΅ΡˆΠ°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π°.

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

ΠŸΡ€Π°Π²ΠΎΠ²Ρ‹Π΅ аспСкты ΠΈ ограничСния

ВСхничСская Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π΅ всСгда ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΎΠ²ΡƒΡŽ Π΄ΠΎΠΏΡƒΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ. Условия использования ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΊΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ прямо Π·Π°ΠΏΡ€Π΅Ρ‰Π°ΡŽΡ‚ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ сбор ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ (скрСйпинг) Π±Π΅Π· письмСнного согласия администрации. ΠΠ°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ этих условий ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ²Π»Π΅Ρ‡ΡŒ Π·Π° собой Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΡƒ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°, IP-адрСсов ΠΈ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΡŽΡ€ΠΈΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΏΡ€Π΅Ρ‚Π΅Π½Π·ΠΈΠΈ.

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

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

Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π½Π° Ρ†Π΅Π»Π΅Π²ΠΎΠΉ сСрвСр. Блишком частыС запросы ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°ΠΌΠ΅Π΄Π»ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ сайта для ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. Π­Ρ‚ΠΈΡ‡Π½ΠΎΠ΅ парсинг-сообщСство Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅Ρ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ запросов Π΄ΠΎ 1–2 Π² сСкунду Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈ использовании качСствСнных прокси, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π½Π°Ρ€ΡƒΡˆΠ°Ρ‚ΡŒ Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ рСсурса.

МоТно Π»ΠΈ ΠΏΠ°Ρ€ΡΠΈΡ‚ΡŒ Авито Ρ‡Π΅Ρ€Π΅Π· ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ API?

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

Какой язык программирования Π»ΡƒΡ‡ΡˆΠ΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ для парсинга?

НаиболСС популярным ΠΈ эффСктивным инструмСнтом являСтся Python благодаря Π±ΠΎΠ³Π°Ρ‚ΠΎΠΉ экосистСмС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ (BeautifulSoup, Scrapy, Selenium, Playwright). Однако для высоконагруТСнных Π·Π°Π΄Π°Ρ‡, Π³Π΄Π΅ Π²Π°ΠΆΠ½Π° ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ выполнСния JavaScript, часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Node.js. Π’Ρ‹Π±ΠΎΡ€ зависит ΠΎΡ‚ вашСй ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΊ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ парсСр пСрСстал Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ†Π΅Π½Ρ‹ ΠΈ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Ρ‹?

Π‘ΠΊΠΎΡ€Π΅Π΅ всСго, сайт ΠΎΠ±Π½ΠΎΠ²ΠΈΠ» вСрстку ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ» способ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ½Π³Π° Π΄Π°Π½Π½Ρ‹Ρ…. Часто Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Ρ‹ ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π·Π° ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ Β«ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€Β», которая ΠΏΠΎΠ΄Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ Ρ‡Π΅Ρ€Π΅Π· ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ AJAX-запрос. Π’ этом случаС Π½ΡƒΠΆΠ½ΠΎ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ сСтСвыС запросы Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° (Π²ΠΊΠ»Π°Π΄ΠΊΠ° Network) ΠΈ ΡΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ‹Π·ΠΎΠ² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ API эндпоинта.

Бколько объявлСний ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ Π² дСнь Π±Π΅Π· Π±Π°Π½Π°?

ΠšΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ†ΠΈΡ„Ρ€Ρ‹ Π½Π΅ сущСствуСт, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π»ΠΈΠΌΠΈΡ‚Ρ‹ динамичСскиС ΠΈ зависят ΠΎΡ‚ качСства Π²Π°ΡˆΠΈΡ… прокси ΠΈ повСдСния скрипта. ΠŸΡ€ΠΈ использовании Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… прокси ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ эмуляции ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ ΠΎΡ‚ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… тысяч Π΄ΠΎ дСсятков тысяч объявлСний Π² сутки. ΠŸΡ€Π΅Π²Ρ‹ΡˆΠ΅Π½ΠΈΠ΅ этого ΠΏΠΎΡ€ΠΎΠ³Π° Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ инфраструктуры ΠΈ увСличСния ΠΏΡƒΠ»Π° IP-адрСсов.

НуТно Π»ΠΈ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° сайтС для парсинга?

Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв авторизация Π½Π΅ трСбуСтся ΠΈ Π΄Π°ΠΆΠ΅ Π½Π΅ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½Π°, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ привязываСт Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Ρƒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π»Π΅Π³ΠΊΠΎ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. ΠŸΠ°Ρ€ΡΠΈΠ½Π³ Π»ΡƒΡ‡ΡˆΠ΅ вСсти Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Β«ΠΈΠ½ΠΊΠΎΠ³Π½ΠΈΡ‚ΠΎΒ» ΠΈΠ»ΠΈ с чистыми профилями Π±Π΅Π· cookies Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ риски для Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π° ΠΈ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ Ρ€ΠΎΡ‚Π°Ρ†ΠΈΡŽ сСссий.

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли прокси Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ?

ΠœΠ΅Π΄Π»Π΅Π½Π½Ρ‹Π΅ прокси ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ врСмя выполнСния скрипта ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ Ρ‚Π°ΠΉΠΌΠ°ΡƒΡ‚Π°ΠΌ соСдинСний. Если Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ 3–5 сСкунд Π½Π° установлСниС соСдинСния, Ρ‚Π°ΠΊΠΎΠΉ прокси слСдуСт ΠΈΡΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΈΠ· ΠΏΡƒΠ»Π°. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ сСрвисы с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ автоматичСской ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ скорости ΠΈ доступности прокси ΠΏΠ΅Ρ€Π΅Π΄ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΈΡ… Π² Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ список.