Действительно ли возможно программно войти в веб-сайт с C#?

Действительно ли возможно записать программу C#, которая загрузит веб-страницу, передаст параметры веб-формы, чтобы войти в систему, затем нажмет на ссылку и загрузить информацию о странице? Очевидно, я предоставил бы имя пользователя и пароль.

В контексте скажем, я хочу проверить, существуют ли какие-либо новые обновления новостей на моей школьной учетной записи, в которую я должен войти с моим школьным именем пользователя/паролем. Я мог предоставить свою программу желаемую информацию и так или иначе заставить ее передавать эти параметры веб-форме и продолжаться вдоль страницы?

5
задан Chris 9 January 2010 в 04:47
поделиться

4 ответа

Да, можно программно войти на сайт.

Вам нужно знать, как ваш школьный сайт обрабатывает логины. Скажем, обработчик входа на ваш школьный сайт это какой-то Login.aspx, и он принимает имя пользователя и пароль в качестве POST, затем вам нужно отправить POST-запрос из вашей программы, используя WebRequest, добавив ваше имя пользователя и пароль в качестве POST-переменных к вашему запросу.

Надеюсь, это поможет.

8
ответ дан 18 December 2019 в 10:44
поделиться

Если страница входа использует HTTP-аутентификацию (ваш браузер отображает приглашение на ввод имени пользователя/пароля), то вы можете отправить его по URL следующим образом:

http://username:password@www.myschool.com/

WebRequest также позволяет установить свойство Credentials и использовать имя пользователя и пароль таким же образом.

5
ответ дан 18 December 2019 в 10:44
поделиться

Используйте класс WebRequest для публикации формы

Пример: http://msdn.microsoft.com/en-us/library /debx8sh9.aspx

2
ответ дан 18 December 2019 в 10:44
поделиться

Альтернативой использованию класса WebRequest является управление WebBrowser . По сути, это "панель" Internet Explorer, которой можно управлять как программно, так и через взаимодействие с пользователем. API элемента управления может быть немного хитрым в использовании, но он действительно дает доступ к DOM загруженной страницы, с которой можно манипулировать с помощью кода. Иногда это может быть удобно. Я сам использовал его в паре веб-приложений.

1
ответ дан 18 December 2019 в 10:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: