Skip to content

drbuche/Scrapy_uri

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

N|Solid

Scraping e Análise de Dados.

Scraping e análise de dados dos ranks da Universidade Regional Integrada.

O que é a URI Online Judge?

A URI Online Judge é um projeto que está sendo desenvolvido pelo Departamento de Ciência da Computação da URI. O principal objetivo é promover a prática de programação e o compartilhamento de conhecimento.

O site contém mais de 1.000 problemas divididos em 8 categorias, todos eles em inglês ou português. Tais categorias auxiliam o aluno a focar nos temas que lhe convêm. Além disso ainda possui suporte para 11 linguagens de programação.

Ao resolver os problemas você acumula pontos e entra no rank de alunos! Caso esteja vinculado a uma instituição de ensino, você pode adicioná-la no seu perfil, fazendo com que a mesma suba de rank com você!

Etapas do projeto:

Será realizado uma coleta de dados, tendo como base os ranks contidos no site URI.

  • Coletaremos o rank de universidades, o qual possui os seguintes atributos:

    • Rank, Acrônimo_Instituição, Instituição, País, Exercícios_resolvidos e Número_estudantes.
  • Coletaremos o rank de alunos, o qual possui os seguintes atributos:

    • Rank, Nome_aluno, Acrônimo_Instituição, url_perfil, Pontos e Status.
  • Coletaremos o rank de países, o qual possui os seguintes atributos:

    • Rank, País, Sigla, Exercícios_resolvidos e Número_estudantes.
  • Coletaremos o Data_cadastro, o qual possui os seguintes atributos:

    • url_perfil, Data_cadastro.



Ferramentas até o momento:

- Jupyter Notebook
- Scrapy
- Numpy
- Pandas
- GeoPandas
- Matplotlib
- Folium
- Nominatim

Preparando o ambiente:

*Os passos com 'ou' representam possíveis soluções para problemas que possam vir a ocorrer, caso a primeira opção não funcione.

  • Atualize o sistema.
sudo apt-get update 
  • Atualize o pip.
pip install --upgrade pip 
# ou 
pip3 install --upgrade pip
  • Instale as dependências:
pip install -r requirements.txt
# ou
pip3 install -r requirements.txt

Utilizando o Scrapy!

  • Dentro da pasta 'scrapy_uri', abra o terminal e execute o seguinte comando:
scrapy runspider main_modulo.py
  • Isso mostrará como tudo esta rodando.

  • Após isso, digite o comando:

scrapy runspider main_modulo.py -o nome_novo_arquivo.csv
  • Isso criara um arquivo .csv, o qual você pode abrir no Excel para organizar e visualizar os dados (lembrando que o scraping é feito de forma não sequencial, então os registros estarão desordenados entre si, não seguindo a sequencia do rank).
  • OBS: O main_alunos.py retorna um arquivo csv que serve de parâmetro para busca de data_cadastro.py, por esse motivo, execute primeiro o main_alunos.py.

Dados:

Dados brutos:


Dados Limpos: