Como salvar uma sessão interativa Python?

Encontro-me frequentemente usando o intérprete do Python para trabalhar com bancos de dados, arquivos, etc. - basicamente muita formatação manual de dados semiestruturados. Não guardo e limpo adequadamente os bits úteis quantas vezes quiser. Existe uma maneira de salvar minha entrada no shell...