Agora que você tem um módulo básico de extração de dados, é preciso aprender a gravá-los. A gravação em Python é um procedimento que exige a realização de 4 etapas:
atribui à variável nomedoarquivo um valor que servirá como nome do arquivo a ser criado, o qual deve ser encerrado pela extensão ".html", para indicar que se trata de um arquivo de html. Você também pode gravá-lo como ".txt", o que fará com que você o abra mais facilmente com o bloco de notas. Porém, ao gravar como .html, você poderá abri-lo no Spyder ou no Pycharm, que vão mostrar as formatações em cores diferentes, seguindo o modelo de exibição dos códigos HTML;
abre o arquivo no modo de escrever ('w' de write), utilizando a codificação utf-8 (que reconhece acentos e cedilhas);
escreve a string correspondente ao código fonte no arquivo aberto. Como foi escolhido o modo 'w', essa operação sobrescreve qualquer conteúdo anteriormente gravado nesse arquivo. Se fosse utilizada a opção 'a', de add, o novo conteúdo seria acrescentado ao final.
fecha o arquivo, o que é importante porque arquivos abertos consomem memória e estão sujeitos a serem sobrescritos.
Antes de seguir adiante, porém, é preciso fazer um pequeno polimento no seu extrator. Do modo como ele está feito, ele grava os arquivos com os dados extraídos no mesmo diretório em que estão os programas, o que vai gerar problemas para você, especialmente quando você tiver algumas extrações diferentes no mesmo diretório.