Ir ao conteúdo
  • Cadastre-se

bruno jean

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

Reputação

0
  1. Pessoal Boa tarde, estou começando no mundo da programação, e preciso de uma forcinha aqui quem puder da um grito ai... trabalho em uma empresa que tem um acompanhamento de garantia estendida, so que no relatorio que nos fornecem vem informado o valor de todas as lojas e de todos os itens por loja, consegui desenvolver o código de webscraping, e consigo printar ele na tela so as informações que preciso ficou bem filtrado, porém não consigo salvar em Excel quando uso o workbook ele so salva o dado da ultima loja que foi printada e não de todas as lojas com seus respectivos resultados ao lado, abaixo o codigo. uso o pycharm. o link usado no webscraping e interno por isso não mandei ele, estou anexando foto de como esta saindo e como precisaria, sei que parece fácil mas eu to perdido. from bs4 import BeautifulSoup import requests from datetime import date import PySimpleGUI as sg import time from openpyxl import Workbook import xlwt sg.theme('LightBlue2') CURITIBA = {15, 71, 94, 142, 169, 204, 207, 216, 235, 269, 323, 344, 642, 668, 681, 682, 692, 703, 705, 723, 826, 828, 830, 843, 881, 1167, 1264, 1326, 5002, 5016, 5019, 5039, 5046} TESTE = {1,642,723,5002} TESTE2={15,71,94} lis= CURITIBA,TESTE,TESTE2 layout = [ [sg.Button('..', button_color=(sg.theme_background_color(), sg.theme_background_color()))], #[sg.Combo(values=lis,size=(4,4),key='listadistrito'), [sg.Button('Consultar Distrito na data de hoje'),sg.Text('Dia ='),sg.Input(size=(3,3),key='diaconsulta'), sg.Text('Mês ='),sg.Input(size=(3,3),key='mesconsulta'),sg.Text('Ano ='),sg.Input(size=(4,4),key='anoconsulta'),sg.Button('Consultar Distrito na Data')], #[sg.Input(size=(4,4),key='loja'),sg.Button('Consultar Loja na data de hoje'),sg.Text('Dia ='),sg.Input(size=(3,3),key='dialoja'), #sg.Text('Mês ='),sg.Input(size=(3,3),key='mesloja'),sg.Button('Consultar Loja na Data')], #[sg.Button('FECHAR'),sg.Button('CalcularVendaAME'),sg.Button('Salvar em Excel'), #[sg.Text('DiaInicio'),sg.Input(size=(3,3),key='diainicio'), #sg.Text('DiaFinal'),sg.Input(size=(3,3),key='diafim'),sg.Button('Consultar no acumulado')], [sg.Output(size=(90, 28))] ] janela = (sg.Window("Sistema de consulta de GE/RF Sem PNLH By (Bruno)", layout)) while True: try: event, values = janela.read() if event == sg.WIN_CLOSED: break elif event =='FECHAR': break elif event =='Consultar Distrito na data de hoje': print('Buscando informações no sistema..') time.sleep(0.2) print('Por favor aguarde...') CURITIBA = [15 , 71 , 94 , 142 , 169 , 204 , 207 , 216 , 235 , 269 , 323 , 344 , 642 , 668 , 681 , 682 , 692 , 703 , 705 , 723 , 826 , 828 , 830 , 843 , 881 , 1167 , 1264 , 1299 , 1326 , 1392 , 1412 , 1469 , 5002 , 5016 , 5019 , 5026 , 5039 , 5046 , 5065 , 5154 , 5322 ] tpt = tft = per = c = 0 for loja in CURITIBA: loja = str(loja) html = requests.get( f"http:// Aqui é o link interno ={loja}&data=&consolidado=0").content soup = BeautifulSoup(html, 'html.parser') v2 = soup.find_all("td", class_="txtPastilha") valor = (v2[0]).string tpassada = (v2[1]).string tfeita = (v2[2]).string if tpassada != "0": tpt1 = tpt tpt = int(tpassada) + tpt1 tft1 = tft tft = int(tfeita) + tft1 if v2 != "0": # calculo por loja r = 100 / int(tpassada) * int(tfeita) if v2 != "0": # calculo por distrito r2 = 100 / int(tpt) * int(tft) c = c + 1 c = c + 1 book = Workbook() sheet = book.active rows = ( ('Loja', 'Vendido', "Convvertido", "Percentual"), (loja, tpassada, tfeita, r, data), ) for row in rows: sheet.append(row) book.save(r'C:\Users\bruno\Desktop\Teste1.xlsx') #print('--' * 55) print(f'{r:.2f}% L{loja} Passou {tpassada} itens sem o PNLH fez {tfeita} GE e ficou com {r:.2f} % HOJE ') print('=' * 42) print(f'O Distrito passou {tpt} e fez {tft} e ficou com {r2:.2f} % HOJE') print('=' * 42)

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...