rodrigosantosbr

[Py] extracao_portal_transparencia.py

Dec 28th, 2018
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 4.06 KB | None | 0 0
  1. # Este script extrai os dados públicos de um servidor contidos no portal da transparencia
  2. # portaltransparencia.gov.br/servidores
  3. # ultima atualizacao: 14/11/18 - Antonio Rodrigo dos Santos Silva
  4.  
  5. from urllib.request import Request, urlopen
  6. from bs4 import BeautifulSoup
  7. URL='http://www.portaltransparencia.gov.br/servidores/2506291'
  8. page = urlopen(URL)
  9. soup = BeautifulSoup(page, "html.parser")
  10. data1 = soup.find(class_='dados-tabelados')
  11. data2 = data1.find_all('span')
  12.  
  13. count = 0
  14. for x in data2:
  15.     count = count + 1
  16.     if count == 1:
  17.         nome = x.text.strip()
  18.     elif count == 2:
  19.         cpf = x.text.strip()
  20.     elif count == 3:
  21.         servidor = x.text.strip()
  22.     elif count == 4:
  23.         licenca = x.text.strip()
  24.     elif count == 5:
  25.         uf = x.text.strip()
  26.     elif count == 6:
  27.         local_trabalho = x.text.strip()
  28.     elif count == 7:
  29.         data_ingresso = x.text.strip()
  30.  
  31. print("nome = {}".format(nome))
  32. print("cpf = {}".format(cpf))
  33. print("servidor = {}".format(servidor))
  34. print("licenca = {}".format(licenca))
  35. print("uf = {}".format(uf))
  36. print("local_trabalho = {}".format(local_trabalho))
  37. print("data_ingresso = {}".format(data_ingresso))
  38.  
  39. data3 = soup.find(id='collapse-1')
  40. data4 = data3.find_all('span')
  41.  
  42. count = 0
  43. for x in data4:
  44.     count = count + 1
  45.     if count == 1:
  46.         matricula = x.text.strip()
  47.     elif count == 2:
  48.         cargo = x.text.strip()
  49.     elif count == 3:
  50.         classe = x.text.strip()
  51.     elif count == 4:
  52.         padrao = x.text.strip()
  53.     elif count == 5:
  54.         nivel = x.text.strip()
  55.     elif count == 6:
  56.         regime_juridico = x.text.strip()
  57.     elif count == 7:
  58.         situacao_vinculo = x.text.strip()
  59.     elif count == 8:
  60.         jornada = x.text.strip()
  61.     elif count == 9:
  62.         data_nomeacao = x.text.strip()
  63.     elif count == 10:
  64.         ato_nomeacao = x.text.strip()
  65.     elif count == 11:
  66.         data_publicacao_doc_ingresso = x.text.strip()
  67.     elif count == 12:
  68.         forma_ingresso = x.text.strip()
  69.     elif count == 13:
  70.         data_ingresso = x.text.strip()
  71.     elif count == 14:
  72.         uf_exercicio = x.text.strip()
  73.     elif count == 15:
  74.         orgao_sup_exercicio = x.text.strip()
  75.     elif count == 16:
  76.         orgao_exercicio_siafi = x.text.strip()
  77.     elif count == 17:
  78.         orgao_exercicio_siape = x.text.strip()
  79.     elif count == 18:
  80.         uorg_exercicio = x.text.strip()
  81.     elif count == 19:
  82.         orgao_sup_lotacao = x.text.strip()
  83.     elif count == 20:
  84.         orgao_lotacao_siafi = x.text.strip()
  85.     elif count == 21:
  86.         orgao_lotacao_siape = x.text.strip()
  87.     elif count == 22:
  88.         uorg_lotacao = x.text.strip()
  89.     elif count == 23:
  90.         ocorrencia_afastamento = x.text.strip()
  91.     elif count == 24:
  92.         data_ingresso_orgao = x.text.strip()
  93.  
  94. print("matricula = {}".format(matricula))
  95. print("cargo = {}".format(cargo))
  96. print("classe = {}".format(classe))
  97. print("padrao = {}".format(padrao))
  98. print("nivel = {}".format(nivel))
  99. print("regime_juridico = {}".format(regime_juridico))
  100. print("situacao_vinculo = {}".format(situacao_vinculo))
  101.  
  102. print("jornada = {}".format(jornada))
  103. print("data_nomeacao = {}".format(data_nomeacao))
  104. print("ato_nomeacao = {}".format(ato_nomeacao))
  105. print("data_publicacao_doc_ingresso = {}".format(data_publicacao_doc_ingresso))
  106. print("forma_ingresso = {}".format(forma_ingresso))
  107. print("data_ingresso = {}".format(data_ingresso))
  108. print("uf_exercicio = {}".format(uf_exercicio))
  109.  
  110. print("orgao_sup_exercicio = {}".format(orgao_sup_exercicio))
  111. print("orgao_exercicio_siafi = {}".format(orgao_exercicio_siafi))
  112. print("orgao_exercicio_siape = {}".format(orgao_exercicio_siape))
  113. print("uorg_exercicio = {}".format(uorg_exercicio))
  114. print("orgao_sup_lotacao = {}".format(orgao_sup_lotacao))
  115. print("orgao_lotacao_siafi = {}".format(orgao_lotacao_siafi))
  116. print("orgao_lotacao_siape = {}".format(orgao_lotacao_siape))
  117. print("uorg_lotacao = {}".format(uorg_lotacao))
  118. print("ocorrencia_afastamento = {}".format(ocorrencia_afastamento))
  119. print("data_ingresso_orgao = {}".format(data_ingresso_orgao))
Advertisement
Add Comment
Please, Sign In to add comment