C# Любым способом замедлить скорость загрузки HtmlWeb.Load() или обойти капчу?

#c# #html-agility-pack

Вопрос:

Я пытаюсь очистить какую-то веб-страницу, но из-за того, что HtmlWeb.Load() работает так быстро (я верю), он блокирует меня и просит сделать капчу. Иногда я могу загрузить его, а иногда нет.

Мне интересно, есть ли какой-нибудь способ замедлить это (может быть, у htmlweb есть какие-то встроенные методы/свойства для этого? или, может быть, есть способ ограничить ресурсы для моего приложения, чтобы оно намеренно работало медленно?). Если это невозможно, есть ли простой способ обойти капчу? Любые советы/помощь будут очень признательны, спасибо.

     <p>
    As you were browsing, something about your browser made us think you might be a bot. There are a few reasons this might happen, including:
  </p>
  <ul>
    <li>You're a power user moving through this website with super-human speed</li>
    <li>You've disabled JavaScript and/or cookies in your web browser</li>
    <li>A third-party browser plugin is preventing JavaScript from running.</li>
  </ul>
 

Комментарии:

1. Я не думаю, что проблема в загрузке, но тот факт, что скорость, с которой вы нажимаете/вводите/перемещаете/и т. Д., Очевидно, поддельная

2. Весь смысл КАПЧИ в том, чтобы предотвратить соскабливание экрана. Если бы существовал простой способ обойти его, им вообще не стоило бы пользоваться, не так ли? И это не имеет никакого отношения к скорости, с которой загружается страница. Если сайт не хочет, чтобы вы выполняли очистку экрана, вам не следует пытаться обойти это ограничение. Скорее всего, это нарушение условий использования этого сайта.

Ответ №1:

Вы думаете, что это потому, что вы загружаете одну страницу слишком быстро, но это совсем не то, что они вам говорят. Ты слишком быстро переключаешься между страницами, чтобы быть человеком. И/или, как я подозреваю, ваше приложение может делать, вы не загружаете JavaScript в свою программу. И/Или вы не обрабатываете файлы cookie.

Любая или все эти три вещи могут быть признаками активности бота. Которым ты, кстати, и являешься. Поэтому они бросают капчу, потому что не хотят, чтобы боты пытались сканировать их сайт. Вы наверняка не собираетесь легко обходить капчу, поэтому лучше всего обратиться к фактическим проблемам, которые они излагают в сообщении.

  • Замедлите время между загрузками страниц до чего-то более реалистичного для просмотра людьми. Однако вы все равно можете зацепиться, если будете просматривать весь их сайт нечеловеческим способом.
  • Обрабатывайте любые файлы cookie, которые они пытаются установить, чтобы вы выглядели как обычный пользователь. Несколько последовательных обращений к сайту без файлов cookie с одного и того же IP-адреса могут не вызвать флаг, но от нескольких десятков до сотен будут.
  • Если это не сработает, возможно, они действительно настаивают на загрузке элементов JavaScript на своем сайте, и вам придется найти способ заставить ваше приложение запускать части JavaScript, чтобы оно не выглядело так, как будто вы бот.

Но, подводя итог, вы бот, и их система работает так, как задумано.