C# Использование HTTPClient для навигации по веб-сайту - PullRequest
1 голос
/ 05 мая 2020

Итак, я только начинаю изучать C#, и одна из моих основных целей - научиться «перемещаться» по веб-сайту. Я провел минимальное исследование и обнаружил, что двумя основными задачами были HTTPClient и Requests, и я хотел бы изучить это через HTTPClient.

Под навигацией я подразумеваю, по сути, бот на веб-сайте для практики. Это похоже на нажатие кнопок, ввод текста в поля и т. Д. c.

Если кто-нибудь может дать мне представление о том, с чего начать, я был бы очень признателен! Не ищу конкретно кода, просто ищу, что мне следует изучить в HTTPClient, чтобы это произошло. Спасибо!

Ответы [ 2 ]

1 голос
/ 05 мая 2020

Я думаю, что вы немного запутались в концепциях. HTTPClient отправляет запросы на какой-то сайт, но вы не можете нажимать кнопки или «перемещаться» внутри сайта.

Если вы ищете способ проверить какой-то сайт, я Рекомендуем узнать про cypress.io . Вы можете добавлять текст в свои текстовые поля, нажимать кнопки или перемещаться по любому сайту. И все это с помощью нескольких строк кода с Javascript. Это бесплатно.

В противном случае, если вам нужно сохранить значения в базе данных в зависимости от вашей «навигации», вы должны изучить около инструментов для удаления . Я рекомендую вам Selenium или любой другой инструмент для утилизации.

Обычно HTTPClient используется, когда вам нужно использовать REST API.

1 голос
/ 05 мая 2020

По сути, вы должны думать о том, как программа может «видеть» веб-сайт. Вы не можете ожидать, что скажете HTTPClient: «Откройте страницу www.google.com и найдите что-нибудь». Если вы хотите сделать это программно, вы должны точно указать, что должна делать ваша программа.

Для ваших целей я рекомендую HTML Agility Pack . Его можно использовать для получения элементов навигации документа HTML. Таким образом, вы можете разобрать HTML, доставленный с веб-сайта, в свою программу и проделать с ним дальнейшие действия.

С уважением :)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...