.NET 4.x Парсинг КиноПоиска и защита от роботов - C#
Формулировка задачи:
В процессе написания программы для парсинга Кинопоиска столкнулся со следующей проблемой: запросы программы распознаются Кинопоиском как робот и вместо целевой страницы в программу возвращается страница со скриншота ниже. Посоветуйте, как обойти это ограничение. Желательно, как можно подробнее, т.к. ранее не сталкивался с работой с html-страницами
Решение задачи: «.NET 4.x Парсинг КиноПоиска и защита от роботов»
textual
Листинг программы
"\n<html>\n<head>\n <title>КиноПоиск.ru - Все фильмы планеты</title>\n <style>\n td {\n font: 100 13px tahoma, verdana;\n }\n\n a {\n color: #000055\n }\n </style>\n <META HTTP-EQUIV=\"Pragma\" CONTENT=\"no-cache\">\n</head>\n<body>\n<center>\n <table cellpadding=5 cellspacing=0 width=500>\n <tr>\n <td>\n <div style=\"padding: 5px 0 10px 5px\"><a href=\"https://www.kinopoisk.ru/\"><img\n style=\"width: 198px; height: 46px\" src=\"https://st.kinopoisk.ru/images/logoOrange.png\"\n alt=\"\"/></a></div>\n </td>\n </tr>\n <tr>\n <td style=\"padding-left:10px\">\n Если вы видите эту страницу, значит с вашего IP-адреса поступило необычно много запросов.\n Система защиты от роботов (СЗоР) решила, что вместо вас действует программа, и ограничила доступ.\n <br><br>\n <small>Для автоматического получения рейтинга, пожалуйста используйте <a\n href='https://www.kinopoisk.ru/rating/462666.xml' target='_blank'>xml</a> версию.\n </small>\n <br/><br/>\n <!-- <br><br>Чтобы продолжить работу, введите число, изображенное ниже. На это роботы не способны, по крайней мере, большинство из них. -->\n <form action=\"\" method=\"post\">\n Введите, пожалуйста, слова с картинки в поле ввода и нажмите «Отправить». Это\n нужно, чтобы мы поняли, что Вы живой пользователь КиноПоиска, а не робот, который задает\n много автоматических запросов.\n <br><br>\n Просим извинения за доставленные неудобства. Спасибо.\n <br><br>\n <script type=\"text/javascript\" src=\"https://www.google.com/recaptcha/api/challenge?k=6LerwhYTAAAAADnD-ScyQ2SbHMJpmt1p00l4SDV8\"></script>\n\n\t<noscript>\n \t\t<iframe src=\"https://www.google.com/recaptcha/api/noscript?k=6LerwhYTAAAAADnD-ScyQ2SbHMJpmt1p00l4SDV8\" height=\"300\" width=\"500\" frameborder=\"0\"></iframe><br/>\n \t\t<textarea name=\"recaptcha_challenge_field\" rows=\"3\" cols=\"40\"></textarea>\n \t\t<input type=\"hidden\" name=\"recaptcha_response_field\" value=\"manual_challenge\"/>\n\t</noscript> <br/>\n <input type=\"submit\" value=\"Отправить\"/>\n </form>\n <br/>\n <br/>\n Если ничего не помогает.<br><br>\n <div id=\"mailto\"\n style=\"width:480px; text-align:left; display:block; background-color:#f2f2f2; padding:15px\">\n Отправьте письмо на адрес: <a href=\"mailto:help@kinopoisk.ru\">help@kinopoisk.ru</a>, с указанием\n этих данных:<br><br>\n <b>IP адрес:</b> 2a02:2698:24:e007:7c99:e016:f51b:1adb <br>\n <b>UserAgent:</b> <br>\n <b>Referer:</b> <br>\n <b>Ht:</b> 4 </div>\n <br>\n </td>\n </tr>\n <tr>\n <td style=\"padding:25px 10px;font-size:11px;color:999\">\n <hr style=\"height:1px\">2016 (c) КиноПоиск.ru\n </td>\n </tr>\n </table>\n</center>\n\n<!-- tns-counter.ru -->\n<script language=\"JavaScript\">\n var img = new Image();\n img.src = 'https://www.tns-counter.ru/V13a***R>' + document.referrer.replace(/\\*/g, '%2a') + '*kinopoisk_ru/ru/CP1251/tmsec=kinopoisk_total/';\n</script>\n<noscript>\n <img src=\"https://www.tns-counter.ru/V13a****kinopoisk_ru/ru/CP1251/tmsec=kinopoisk_total/\" width=\"1\" height=\"1\"\n alt=\"\"/>\n</noscript>\n<!--/ tns-counter.ru -->\n\n<script type=\"text/javascript\">\n var gaJsHost = ((\"https:\" == document.location.protocol) ? \"https://ssl.\" : \"http://www.\");\n document.write(unescape(\"%3Cscript src='\" + gaJsHost + \"google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E\"));\n</script>\n<script type=\"text/javascript\">\n var pageTracker = _gat._getTracker(\"UA-1078348-1\");\n pageTracker._initData();\n pageTracker._trackPageview();\n</script>\n</body>\n</html>\n"
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д