Skip to content

Instantly share code, notes, and snippets.

@tocvieira
Created August 28, 2016 10:34
Show Gist options
  • Save tocvieira/2416f805914971b680d728632d33462e to your computer and use it in GitHub Desktop.
Save tocvieira/2416f805914971b680d728632d33462e to your computer and use it in GitHub Desktop.
import datetime
import requests
from bs4 import BeautifulSoup
def get_stone_report():
today = datetime.datetime.strftime(datetime.datetime.now(), '%Y%m%d')
url = 'https://conciliation.stone.com.br/conciliation-file/v2/20160510' # {}'.format(today)
headers = {
"Authorization": 'cabab2f481f34f50920726f1aded858a',
# "Accept-Encoding": "gzip"
}
r = requests.get(url, headers=headers)
return r.text
def paser_xml_net_amount(soup):
total_net_amount = []
for item in soup.findAll('NetAmount'):
total_net_amount.append(float(item.text))
return total_net_amount
def paser_xml_payment_date(soup):
dates = []
for item in soup.findAll('PrevisionPaymentDate'):
dates.append(item.text)
return dates
def main():
xml = get_stone_report()
soup = BeautifulSoup(xml, 'xml')
total_net_amount = paser_xml_net_amount(soup)
dates = paser_xml_payment_date(soup)
print ('#####################################################')
print ('# Relatório Stone #')
print ('#####################################################')
print ("O total líquido de transações na STONE foi de {}".format(sum(total_net_amount)))
print ("Provavel data de pagamento: {}".format(dates))
if __name__ == '__main__':
main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment