Sat 2019-11-23 06:12:56 -04, verifique os logs aqui.
O CNPq por meio do currículo Lattes agrega dados do registro da vida profissional de estudantes, professores, e pesquisadores do país, e tornando-se padrão nacional no meio científico para consulta sobre a produção científica dos referidos profissionais.
Contudo, após a criação do captcha para o acesso aos currículos Lattes,
extrair dados dos currículos se tornou uma tarefa árdua, pois todas vez
que pretende-se acessar um currículo, torna-se necessário passar pelo
captcha. Com o intuito de auxiliar na obtenção destes dados, o
lucyLattes
foi desenvolvido.
Extração, compilação, e organização dos dados dos currículos da plataforma Lattes em arquivos de texto, e geração de um relátório simplificado, que proporcionam agilidade para a geração de informação.
Veja algumas informações geradas:
Publicações de periódicos por ano Publicações de periódicos por qualis Interações entre pesquisadores na publicação de periódicosAlém das figuras, algumas tabelas são geradas:
Petter Pan
- http://lattes.cnpq.br/000000 (atualizado em: 13-12-2018)
iniciacao_cientifica = 27
trabalho_de_conclusao_de_curso_graduacao = 23
YEAR | A2 | B1 | B2 | B3 | B4 | B5 | C | XX | |
---|---|---|---|---|---|---|---|---|---|
2015 | 0 | 4 | 0 | 4 | 0 | 0 | 0 | 0 | |
2016 | 0 | 3 | 0 | 0 | 0 | 0 | 1 | 2 | |
2017 | 0 | 2 | 1 | 3 | 0 | 2 | 0 | 1 | |
2018 | 0 | 0 | 0 | 4 | 0 | 0 | 0 | 0 |
Resumo da produção de artigos em periódicos do grupo 2010-2019
FULL_NAME | A1 | A2 | B1 | B2 | B3 | B4 | B5 | C | XX | TOTAL | |
---|---|---|---|---|---|---|---|---|---|---|---|
0 | Celite | 0 | 2 | 19 | 0 | 2 | 3 | 4 | 0 | 1 | 31 |
1 | Dijon | 0 | 2 | 8 | 4 | 3 | 2 | 22 | 1 | 1 | 43 |
2 | Cido | 0 | 8 | 15 | 3 | 9 | 1 | 10 | 3 | 1 | 50 |
3 | Petter Pan | 0 | 1 | 20 | 2 | 18 | 3 | 6 | 1 | 9 | 60 |
O lucyLattes não tem vínculo com o CNPq. Este programa computacional é fruto de um esforço (independente) realizado com o objetivo de dar suporte às rotinas de análise de dados cadastradas nos Currículos Lattes (publicamente disponíveis).
Este programa é um software livre; você pode redistribui-lo e/ou modificá-lo dentro dos termos da Licença Pública Geral GNU. Verifique o arquivo LICENSE.txt .
Este programa é distribuído na esperança que possa ser util, mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Verifique o arquivo LICENSE.txt .
Inicialmente recomenda-se a leitura dos próximos tópicos (Instalação e Como executar o programa).
Posteriormente, se achar necessário, há uma explicação mais detalhada no blog: Blog - post LucyLattes
-
Requerimentos:
- Sistema operacional Linux;
- Python 3 ou superior;
- Navegador (Firefox ou Chorme) para visualizar relatório.
-
Se não possuir Python3 ou superior instalado executar no terminal:
Se vc usar UBUNTU 18
sudo apt-get install python3
sudo apt-get install python3-pip
sudo apt-get install python3-tk
- Caso não tenha as bibliotecas Python instaladas executar no terminal:
pip3 install pandas
pip3 install numpy
pip3 install requests
pip3 install beautifulsoup4
pip3 install matplotlib
pip3 install networkx
pip3 install lxml
pip3 install tabulate
- Faça o Download do arquivo
.zip
que contém olucyLattes
. Antes do dowload, caso queira, vc pode pode ajudar com quanto quiser para manter o projeto:
Download aqui: https://github.com/rafatieppo/lucyLattes/archive/master.zip
-
Descompacte o arquivo
.zip
que pode ser obtido em um diretório de sua preferência. -
Na pasta descompactada, abra o arquivo
list_id_name.txt
com um editor de texto, leias as instruções no arquivo e faça as alterações necessárias. Salve e feche o arquivo. -
Faça o dowload dos curriculos Lattes desejados e copie todos no diretório
xml_zip
. Para realizar o download, acesso o currículo Lattes do pesquisador, e no canto superior direito clique sobre um botãoXML
, salve o arquivo e NÃO altere o nome e nem o formato, NÃO DESCOMPACTE OS ARQUIVOS. O nome do arquivo é composto por 16 caracteres e a extensão.zip
, e.g.3275865819287843.zip
. -
Abra o arquivo
config.txt
com um editor de texto e altere o que for necessário. Somente edite à direita do símbolo ":" Salve e feche o arquivo. -
Acesse o diretório descompactado pelo terminal e digite:
python3 lucyLattes.py
- Se tudo ocorreu corretamente, um relatório foi gerado no diretório
relatório
, basta acessar com um navegador (Chrome ou Firefox**.
Atenção, Atenção, Atenção.
Sempre que editar o arquivo list_id_name.txt
APAGUE todos os
arquivos do diretório csv_producao
.
- Nos de uma estrela clicando na estrela no topo da página (lado direito)
- Deixe um comentário no Blog - post LucyLattes
-
DONE Capturar os projetos de pesquisa, e extensão, com seus respectivos participantes, classificação do tipo de projeto (pesquisa ou extensão) organizando os dados em um
DataFrame
; -
DONE Capturar produção técnica de cada pesquisador
-
DONE Capturar as atividades de orientação;
-
DONE Ler o
.xml
direto do.zip
; -
DONE Realizar um looping para caturar uma série de currículos.
-
DONE Capturar produção em periódicos;
-
DONE Associar produção em periódico com capes qualis;
-
DONE Gerar um arquivo
.csv
com o extrato de produção na pasta relatório; -
DONE Salva em pasta específica arquivos
.csv
individuais para cada pesquisador[100%]- os projetos de pesquisa e extensão;
- cursos de curta duração;
- publicações em periódico com qualis, revista;
- publicações de livros e capítulos;
- orientações (tcc, ic, mestrado, doutorado);
-
TODO Grafo de interação entre pesquisadores [33%]
- realiza interações somente entre artigos
- como observação, deve-se atentar que os integrantes que não possuem interação(s) não aparecem no grafo.
- Verificar as interações nos projetos de pesquisa e extensão;
- Calcular o peso das interações dos membros no grafo;
- Capturar as atividades dos projetos de extensão;
- Gerar um
.json
file para cada currículo;
-
DONE Relatório em
.html
[100%]- Relação de pesquisadores, cidade, estado, link lattes, lattes atualização;
- Lista de projetos de pesquisa e extensão;
- Síntese de artigos publicados em periódicos;
- Gráficos dos periódicos por período e por qualis;
- Extrato de produção por pesquisador;
- relação de livros
- relação de orientações
- Havia um erro na leitura dos anos de início dos projetos, qdo a
passava-se a variável (ANO) de
str
paraint
em alguns casos a variável continha uma casa decimal (e.g. 2010.0), impossibilitando deixar o número inteiro em um único passo.
- Melhoria no código de verify (
verify.py
). MétodoIOError
foi substituído porOSError, IOError
. In 3.3, IOError became an alias for OSError, and FileNotFoundError is a subclass of OSError. PEP 3151.
- Melhoria no código de verificação (
verify.py
). Quando um arquivo.csv
de produção é solicitado e o mesmo não foi gerado por falta de produção nos currículos, um aviso é emitido na tela e uma observação é impressa no relatório (report.py
).
- Um código para verificação dos anos em todos os arquivos de produção
foi desenvolvido (
verify.py
). Se o ano da produção não foi extraído, a produção é excluída do arquivo.csv
. Quando há falha na extração do ano, os arquivos são atualizados e salvos.
- Organização do arquivo para relação de orientações de cada pesquisador. As orientações estão divididas de acordo com a classificação do CNPq. No relatório para cada pesquisador há uma síntese das orientações, e no final do relatório há uma tabulação com o tipo de orientação e quantidade de orientações por pesquisador.
- Extração da orientação de doutorado concluída ok. Falta realizar o relatório de todas as orientações.
- Houve tentantiva de melhorar a extracao do resumo (
scrapper.py
), mas sem sucesso. A mensagem para os resumos nao capturados foi alterada para: Nao foi possivel extrair o resumo.
- No
scrapper.py
para ppe os limites de seleção foram melhorados.
- Insirido no relatório publicação de livros e capítulos (gráficos e listas). Na produção individual também insirido o número de livros e capítulos. No resumo da produção foi inserido o número de profissionais que formam a equipe.
- No relatório, caso tenha ocorrência de pesquisadores que não possuam interação em periódicos, uma lista com o nome dos mesmos é adicionada. Melhoria na disposição do grafo, relatório aprimorado.
- Melhorias no relatório com indicação do número total de projetos como coordenador e integrante.
- Problema no ids que inciavam com o zero foram corrigidos. O relatório foi melhorado com adicao de link lattes na producao individual, um extrato do grupo foi adicionado no final. Avisos para PPE e PAPERS sem ano foram adicionados. Corrigido para resumo gerado automaticamente pelo Lattes.
- No relatório as produções foram enumeradas. Avisos foram inseridos após a finalização dos processos.
- o método de verificação da ordem de autoria do paper foi melhorado, a ordem é obtida direto do lattes.
- relatório está implementado, como produto um arquivo
.html
é gerado. Para verificar a interação entre os integrantes um Grafo é gerado, assumindo somente as interações entre publicações em periódicos.
- relatório
.html
foi iniciado, mas não foi implementado na função ainda.
- foi inserido uma verificação no scraperlattes, caso o comprimento da
lista seja zero é informado. Há um arquivo
.csv
com o nome completo, sobrenome, e id do pesquisador. Foi iniciado a análise de dados para o reatório.
- foi criado um arquivo
config.txt
com objetivos de:- especificar o arquivo
.csv
que será utilizado no qualis.
- especificar o arquivo
- função para capturar os periódicos com qualis foi concluída, os
arquivos
.xml
foram movidos para a pastaxml_zip
.
- os arquivos
.xml
são lidos diretamente do arquivo.zip
. Foi criado um arquivo lista no formato.csv
, neste arquivo deve conter o id Lattes de cada pesquisador e seus respectivo nome.
- do arquivo
.xml
do lattes é possível extrair o nome do projeto, tipo do projeto, ano de início, e integrantes, etc
scraperlattes.py
: contém as funções que extraem as informações necessárias e geram os.csv
;readidlist.py
: faz a leitura da lista que contém o id dos pesquisadores ;lucyLattes.py
: funciona como o executável;config.txt
: configurações para funcionamento do script;tidydf.py
: organiza osDataFrame
;report.py
: gerador do relatório;grapho.py
: gerador do gráfico com as interações entre os membros.verify.py
: verifica e corrige extração do anos para as produções.
J. P. Mena-Chalco e R. M. Cesar-Jr. scriptLattes: An open-source knowledge extraction system from the Lattes platform. Journal of the Brazilian Computer Society, vol. 15, n. 4, páginas 31--39, 2009.
Rossum, G. van ( C. voor W. en I. (CWI)). (1995). Python tutorial. Python (Vol. 206). Amsterdam.
- Rafael Tieppo
- [email protected]
- https://rafatieppo.github.io/