import requests
from requests_ntlm import HttpNtlmAuth
from bs4 import BeautifulSoup
import pandas as pd
from datetime import datetime
import time

def gic():
try:
data_atual = datetime.now()
print(data_atual)

logincaixa = "seu_login"
senhacaixa = "sua_senha"
token = "seu_token"

df_gic = pd.DataFrame(columns=["dt_ul_inter", "aut_ult_int", "protocolo", "data/hora", "fila", "pasta", "meio_acionamento", "status"])

url_base = ""
params = {
"_token": token,
"_method": "GET",
"do_search": 1,
"co_ambiente": 44,
"co_meio_acionamento": 30,
"co_status_chamado": 3,
"first_period": "2024-05-09",
"last_period": "2024-05-09",
"order": "asc"
}

gic = requests.get(url_base, params=params, auth=HttpNtlmAuth(logincaixa, senhacaixa))
print("Realizando procedimento para HABITACAO")

if gic.status_code == 200:
soup = BeautifulSoup(gic.content, "html.parser")
paginas_gic = soup.find("ul", class_="pagination")

if paginas_gic:
itens_pagina_gic = paginas_gic.find_all("li")
primeira_pag = int(itens_pagina_gic[1].get_text(strip=True))
ultima_pag = int(itens_pagina_gic[-2].get_text(strip=True))
else:
primeira_pag = ultima_pag = 1

for pagina_atual in range(primeira_pag, ultima_pag + 1):
print("Página Atual:", pagina_atual)
params["page"] = pagina_atual
gic_page = requests.get(url_base, params=params, auth=HttpNtlmAuth(logincaixa, senhacaixa))

if gic_page.status_code == 200:
soup_page = BeautifulSoup(gic_page.content, "html.parser")
table_gic = soup_page.find("table", class_="table table-striped")

if table_gic:
tbody_gic = table_gic.find("tbody")
for tr in tbody_gic.find_all("tr"):
row = [td.get_text(strip=True) for td in tr.find_all("td")]
df_length = len(df_gic)
df_gic.loc[df_length] = row

print(df_gic)
else:
print("Erro ao acessar a página.")

except requests.RequestException as e:
print("Erro de rede:", e)
except Exception as e:
print("Erro no script:", e)

gic()

Resposta :

Outras perguntas