Skip to content

Instantly share code, notes, and snippets.

@DATAUNIRIO
Last active May 10, 2022 20:31
Show Gist options
  • Save DATAUNIRIO/349c4f0eea43d99450309174e25f415b to your computer and use it in GitHub Desktop.
Save DATAUNIRIO/349c4f0eea43d99450309174e25f415b to your computer and use it in GitHub Desktop.
R e Python
# Aula de integração do R com o Python
# Objetivo: Raspar dados de uma tabela com o python e fazer um histograma com o R
# Parte 2: script do python
import requests
from bs4 import BeautifulSoup
import os
import csv
import pandas as pd
path = os.getcwd()
print(path)
os.chdir(r"C:/Users/Hp/Documents/DIRETORIO DE TRABALHO DO PYTHON")
print("Directory changed")
website_url = requests.get('https://pt.wikipedia.org/wiki/Lista_de_munic%C3%ADpios_do_Rio_de_Janeiro_por_PIB').text
soup = BeautifulSoup(website_url,'html.parser')
tabela = soup.findAll("table", {"class":"wikitable"})[0]
titulo = tabela.findAll("tr")
linhas = tabela.findAll("td")
print(tabela)
print(linhas)
print(linhas[0].text) # posicao
print(linhas[1].text) # nome
print(linhas[2].text) # pib
print(linhas[3].text) # pib-per-capta
print(linhas[4].text) # idh
print(linhas[5].text) # posicao
print(linhas[6].text) # nome
print(linhas[7].text) # pib
posicao = []
nome = []
pib = []
pibcapta= []
idh = []
nome.append(linhas[1].text)
nome
nome = []
for i in range(0,221,5): # 5*45
print(f"Processing number: {i}")
posicao.append(linhas[i].text)
print(posicao)
for i in range(1,222,5): # 5*45
print(f"Processing number: {i}")
nome.append(linhas[i].text)
print(nome)
for i in range(2,223,5): # 5*45
pib.append(linhas[i].text)
print(pib)
for i in range(3,224,5): # 5*45
pibcapta.append(linhas[i].text)
print(pibcapta)
for i in range(4,225,5): # 5*45
idh.append(linhas[i].text)
print(idh)
posicao = pd.DataFrame(posicao)
nome = pd.DataFrame(nome)
pib = pd.DataFrame(pib)
pibcapta = pd.DataFrame(pibcapta)
idh = pd.DataFrame(idh)
exit
@DATAUNIRIO
Copy link
Author

import csv

posicao.to_csv('posicao.csv', sep=';', encoding='utf-8')
nome.to_csv('nome.csv', sep=';', encoding='utf-8')
pib.to_csv('pib.csv', sep=';', encoding='utf-8')
pibcapta.to_csv('pibcapta.csv', sep=';', encoding='utf-8')
idh.to_csv('idh.csv', sep=';', encoding='utf-8')

exit

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment