Invoke webrequest не может получить данные сайта, хотя работает во всех браузерах - PullRequest
0 голосов
/ 15 апреля 2020

Powershell: invoke-webrequest не работает для меня для определенного сайта. Перепробовал много вещей, таких как установка настроек TLS et c. Но все равно не получается. Одна уникальная вещь - это работает для первого запроса, после чего он не работает в течение 15 минут, но это не так при просмотре сайта через браузер. Может ли кто-нибудь помочь мне, пожалуйста

Invoke-WebRequest 'https://www1.nseindia.com/products/content/equities/equities/eq_turnapr2020.htm'

Для следующего запроса он ждет вечно, затем идет тайм-аут. Но в браузере это не так (в IE, chrome)

Изображение ошибки тайм-аута. Первый запрос работает

1 Ответ

0 голосов
/ 16 апреля 2020

Это было из-за антискриптового механизма сайта. Чтобы обойти это, мы должны сделать так, чтобы это было похоже на запрос пользователя через браузер. Для этой текущей проблемы с этим веб-сайтом было решено включить заголовки в Invoke-WebRequest. Вы можете получить копию заголовка запроса через Chrome Инструменты разработчика> вкладка Сеть> (щелкните правой кнопкой мыши URL)> Копировать> копировать как powershell. Затем вставьте это и возьмите хэш-таблицу заголовков (затем вы можете удалить раздел куки).

...