Какие технологии необходимо использовать при написании бота для сайта
Не знаете вы язык, раз задаете вопрос что с его помощью можно сделать.
Пункты 1-3 можно сделать на чём угодно средствами работы с сетью и xpath/regexp. 4-й осложняет дело, тут может быть проще взять какой-нибудь selenium, благо рулить им можно из того же C#.