[SP-pm] Problemas com JSON e PERL

Blabos de Blebe blabos at gmail.com
Wed Jun 16 11:31:33 PDT 2010


Você pode verificar qual a versão do JSON instalada digitando no
terminal o seguinte oneliner:

perl -MJSON -e 'print $JSON::VERSION, $/;'

Se ele estiver instalado, isso mostrará a versão. Se um erro ocorrer,
provavelmente ele não está instalado.

Você pode instalar o módulo JSON no ubuntu através do pacote
libjson-perl, via apt-get, synaptic ou o que preferir.

Qualquer coisa, só falar e não esqueça do use strict e use warnings, ok?

...


Existem outros projetos em Perl por aí?

Abraços

2010/6/16 Daniel de Oliveira Mantovani <daniel.oliveira.mantovani em gmail.com>:
> JSON
>
> 2010/6/16 Daniel de Oliveira Mantovani <daniel.oliveira.mantovani em gmail.com>:
>> Digita na Shell,
>>
>> $cpan JASON
>>
>> Acho que o módulo está desatualizado e não tem esse método.
>>
>> []'s
>>
>> 2010/6/16 Walter Silvestre Coan <w.coan em terra.com.br>:
>>> Então...
>>>
>>> Seguindo todas as dicas que voces mandaram descobri o seguinte:
>>> - Fiz a alteração do parametro do open conforme o Daniel e quase todos
>>> pediram, a principio continuou conseguindo criar o arquivo porém ainda com o
>>> conteudo em branco.
>>> - Então fiz a sugestão do Frederico usando o dumper, consegui finalmente
>>> mostrar em tela o valor da variavel e realmente ela esta sendo carregada com
>>> o conteudo que eu preciso levar para o Json. As informações foram
>>> apresentadas corretamente em tela (nem precisou debugar).
>>> OBS: Blabos infelizmente meu conhecimento em Perl é inicial quase Zero (e
>>> principalmente porque não fui eu que escrevi o codigo, simplesmente estou
>>> tentando utiliza-lo). Mas acredito que voce esteja correto em sua afirmação
>>> sobre a forma como foi feito. Pois simplesmente coloquei sua sugestão do
>>> bloco de tratamento de erro e obtive a seguinte mensagem em tela:
>>> "Undefined subroutine &main::to_json called at scriptLattes line 1739."
>>>
>>> E agora vem a pergunta. Mas nas primeiras linhas do programa eu tenho:
>>> use JSON;
>>>
>>> Alguma sugestão?
>>>
>>>
>>> Walter
>>> ----- Original Message ----- From: "Daniel de Oliveira Mantovani"
>>> <daniel.oliveira.mantovani em gmail.com>
>>> To: <saopaulo-pm em mail.pm.org>
>>> Sent: Wednesday, June 16, 2010 2:44 PM
>>> Subject: Re: [SP-pm] Problemas com JSON e PERL
>>>
>>>
>>> Faça o que o Blabos disse, e coloque,
>>> use strict;
>>> use warnings;
>>> No começo do arquivo, e veja se acontece algum erro ou warning. Isso
>>> vai te ajudar muito.
>>>
>>> http://perldoc.perl.org/strict.html
>>> http://perldoc.perl.org/warnings.html
>>>
>>> []'s
>>>
>>> 2010/6/16 Walter Silvestre Coan <w.coan em terra.com.br>:
>>>>
>>>> Complementando meu email anterior e respondendo ao e-mail do Andre,
>>>>
>>>> Realmente o código que eu mandei esta incorreto. No e-mail anterior eu
>>>> acredito ter mandado o correto agora. Bom quanto a versão do Perl vou
>>>> tentar
>>>> atualizar para ver se ajuda de alguma forma. Quanto a questão de pacotes,
>>>> sim nas primeiras vezes que eu tentei rodar o script varios problemas de
>>>> falta de pacotes foram aparecendo e eu mandei bala no apt-get ate que
>>>> parou
>>>> de dar erros e o script rodou até o final. Portanto nenhum erro é
>>>> apresentado em tela, simplesmente o arquivo database.json permanece em
>>>> branco.
>>>>
>>>> Vou tentar as alterações propostas pelos colegas da lista e retorno se
>>>> funcionar.
>>>>
>>>> Mais uma vez obrigado.
>>>>
>>>> Walter
>>>>
>>>> ----- Original Message -----
>>>> From: Andre Carneiro
>>>> To: saopaulo-pm em mail.pm.org
>>>> Cc: saopaulo-pm em pm.org
>>>> Sent: Wednesday, June 16, 2010 11:51 AM
>>>> Subject: Re: [SP-pm] Problemas com JSON e PERL
>>>>
>>>>
>>>> 2010/6/16 Walter Silvestre Coan <w.coan em terra.com.br>
>>>>>
>>>>> Bom dia,
>>>>>
>>>>> Estou tentando adaptar uma aplicação chamada ScriptLattes
>>>>> (http://scriptlattes.sourceforge.net/). Ele é uma aplicação escrita em
>>>>> Perl
>>>>> com o objetivo de realizar o download dos dados da Plataforma Lattes, que
>>>>> são curriculos academicos de alunos e professores. Uma das novas
>>>>> funcionalidades desse script é que os dados baixados são salvos em um
>>>>> arquivo .json, possibilitando serem importados para outros formatos ou
>>>>> até
>>>>> bancos de dados. O problema é que quando eu rodo esse script no meu
>>>>> ambiente
>>>>> (Ubuntu 8.4 server). Ele simplesmente gera o arquivo .json em branco
>>>>> (apesar
>>>>> do script realizar as outras tarefas corretamente). O autor do script me
>>>>> ajudou e fez alguns testes, e no computador dele esta funcionando
>>>>> perfeitamente, gerando os dados no formato json. Acredito que o problema
>>>>> esteja no meu ambiente, porém eu ja baixei vários pacotes referentes ao
>>>>> PERL
>>>>> e ao JSON mas nada de funcionar.
>>>>>
>>>>> O codigo que gera o arquivo basicamente é esse:
>>>>> sub createJsonFile
>>>>> {
>>>>> # Arquivo JSON contendo todas as produções do grupo.
>>>>> # Este arquivo pode ser utilizado para popular bancos de dados.
>>>>
>>>> Isto não deveria estar descomentado e com um ';' no final, e sendo
>>>> atribuído
>>>> a alguma variável???
>>>>>
>>>>> #to_json($allInfoByType)
>>>>
>>>>
>>>>>
>>>>> open(JSONFILE, ">$outputDir/database.json");
>>>>> eval
>>>>> {
>>>>> print JSONFILE lenght($allInfoByType);
>>>>> };
>>>>> close(JSONFILE);
>>>>> }
>>>>
>>>> Até aqui blz. Mas database.json tem conteúdo? Se não tiver o teu script
>>>> não
>>>> vai gravar nada em $allInfoByType, concorda?
>>>>
>>>>>
>>>>>
>>>>>
>>>>> Alguns dados:
>>>>> Perl versão 5.8.8
>>>>
>>>> Alguma chance de você atualizar isso para 5.10 pelo menos? Não que tenha a
>>>> ver com o problema(não necessariamente)...
>>>>
>>>>>
>>>>>
>>>>> Pacotes instalados:
>>>>> waltercoan em ldubuntuserver:~$ dpkg --get-selections | grep -i json
>>>>> libjson-any-perl install
>>>>> libjson-perl install
>>>>>
>>>>
>>>> Humm , Ok! você instalou uma porrada de coisa. Mas perl reclama de
>>>> módulo(s)
>>>> faltando? Ou o S.O. reclama de alguma coisa?
>>>> Vc tem alguma dificuldade com o CPAN, ou simplesmente prefere instalar
>>>> coisas via dpkg ? Eu só uso apt-get/dpkg como último recurso(módulos com
>>>> dependências chatas de resolver, normalmente), no caso de módulos Perl.
>>>> Primeiro porque com o CPAN, tem-se o módulo compilado na máquina, e
>>>> configurado nos locais configurados para o perl corretamente. Eu não tenho
>>>> como garantir isso instalando via apt/dpkg(ou tô falando besteira), por
>>>> isso
>>>> pergunto novamente se Perl está reclamando de módulos faltantes?
>>>>
>>>> Mais detalhes do problema, por favor. Mensagens de erro se possível...
>>>>
>>>>>
>>>>>
>>>>>
>>>>> Obrigado,
>>>>>
>>>>> Walter Coan
>>>>> w.coan em terra.com.br
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> SaoPaulo-pm mailing list
>>>>> SaoPaulo-pm em pm.org
>>>>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>>>
>>>>
>>>>
>>>> --
>>>> André Garcia Carneiro
>>>> Analista/Desenvolvedor Perl
>>>> (11)82907780
>>>>
>>>> ________________________________
>>>>
>>>> _______________________________________________
>>>> SaoPaulo-pm mailing list
>>>> SaoPaulo-pm em pm.org
>>>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>>>
>>>> _______________________________________________
>>>> SaoPaulo-pm mailing list
>>>> SaoPaulo-pm em pm.org
>>>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>>>
>>>
>>>
>>>
>>> --
>>> "If you’ve never written anything thoughtful, then you’ve never had
>>> any difficult, important, or interesting thoughts. That’s the secret:
>>> people who don’t write, are people who don’t think."
>>> _______________________________________________
>>> SaoPaulo-pm mailing list
>>> SaoPaulo-pm em pm.org
>>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>>
>>> _______________________________________________
>>> SaoPaulo-pm mailing list
>>> SaoPaulo-pm em pm.org
>>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>>
>>
>>
>>
>> --
>> "If you’ve never written anything thoughtful, then you’ve never had
>> any difficult, important, or interesting thoughts. That’s the secret:
>> people who don’t write, are people who don’t think."
>>
>
>
>
> --
> "If you’ve never written anything thoughtful, then you’ve never had
> any difficult, important, or interesting thoughts. That’s the secret:
> people who don’t write, are people who don’t think."
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm em pm.org
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>


More information about the SaoPaulo-pm mailing list