Вам необходимо закодировать параметры:
params = urllib.urlencode({"username":"test@msn.com","password":"test"})
301 может быть полностью легитимным, например, вы отправляете сообщение в обработчик входа в систему, который обычно принимает POST, выдает Cookie и перенаправляет вас на "правильная страница для обработки вашего сеанса.
Сначала взгляните на заголовки ответа, посмотрите, есть ли Cookie и на какую страницу вы перенаправляетесь.Это должно помочь вам разобраться.