Olá,
Acabei de configurar o Discourse, mas gostaria de importar meus comentários do Disqus. Notei que existe um script de importação muito bom, porém ele não parece estar funcionando para mim.
ATUALIZAÇÃO #2: Ok, parece que eu tinha algum XML malformado, então agora estou com o mesmo problema mencionado aqui. O problema é que o Disqus não inclui mais o endereço de e-mail nas exportações XML e, na verdade, “oculta” eles no painel deles. Então, talvez não seja possível importar os comentários a menos que você adicione algum código adicional para também gerar endereços de e-mail sob demanda para a função create_users.
ATUALIZAÇÃO: Na verdade, acho que deveria dar um passo atrás por um segundo. Sem ajustar o item frozen_string_literal no topo do script, recebo:
Traceback (most recent call last):
6: from script/import_scripts/disqus.rb:228:in `<main>'
5: from script/import_scripts/disqus.rb:228:in `new'
4: from script/import_scripts/disqus.rb:21:in `initialize'
3: from /var/www/discourse/vendor/bundle/ruby/2.6.0/gems/nokogiri-1.10.10/lib/nokogiri/xml/sax/parser.rb:104:in `parse_file'
2: from /var/www/discourse/vendor/bundle/ruby/2.6.0/gems/nokogiri-1.10.10/lib/nokogiri/xml/sax/parser.rb:104:in `parse_with'
1: from script/import_scripts/disqus.rb:176:in `characters'
script/import_scripts/disqus.rb:195:in `record': can't modify frozen String (FrozenError)
Então, talvez esse problema deva ser resolvido primeiro (antes de investigar o que está abaixo)?
root@discourse:/var/www/discourse# su discourse -c "bundle exec ruby script/import_scripts/disqus.rb"
Loading existing groups...
Loading existing users...
Loading existing categories...
Loading existing posts...
Loading existing topics...
importing users...
importing topics...
Updating topic status
Updating bumped_at on topics
Updating last posted at on users
Updating last seen at on users
Updating first_post_created_at...
Updating user post_count...
Updating user topic_count...
Updating topic users
Updating post timings
Updating featured topic users
Updating featured topics in categories
4 / 4 (100.0%) [3222 items/min] n]
Resetting topic counters
Done (00h 00min 00sec)
Não sei muito Ruby - na verdade, não sei nada, mas sei o suficiente para tentar adicionar algum depuração como puts "#{id}" para ver se algo está sendo buscado e etc. Por exemplo, adicionei a linha acima 190 - puts "#{target}" ou puts "#{str}" para que eu possa ver que o arquivo está sendo lido definitivamente.
Sei o suficiente do script que está funcionando para saber que IMPORT_FILE e IMPORT_CATEGORY foram definidos corretamente.
Alguma ideia sobre o que mais posso fazer para solucionar/debugar?
Obrigado! ![]()