'''Created 21 Nov 2023 Levi''' import os import pprint from time import sleep from threading import Thread from datetime import datetime import keyboard as kb import pywinctl as gw from pywinctl import Window as win_ import requests from selenium import webdriver from selenium.webdriver import ChromeOptions # HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\AutoSelectCertificateForUrls # Here create new String value (REG_SZ) with name 1 # As Value data enter: # {"pattern":"[*.]webserviced.anaf.ro/SPVWS2/rest/listaMesaje?zile=1","filter":{"ISSUER":{"CN":"certSIGN Qualified CA"}}} def accept_cert(): # brave_ready.wait() sleep(2) win_2 = gw.getWindowsWithTitle('data:,', condition=gw.Re.CONTAINS)[0] if win_2.isActive: win_2.hide() t_ = 0 while True: try: if t_ >= 1.5: break win_ = gw.getWindowsWithTitle('Windows Security', condition=gw.Re.CONTAINS)[0] if not win_.isActive: win_.activate() win_.acceptInput(True) sleep(0.5) kb.write(os.getenv('PKCS11PIN')) kb.press_and_release('enter') break except Exception: t_ += 0.01 sleep(0.01) def convert_and_extract_date(item): item['created_date'] = datetime.strptime(item['data_creare'], '%d.%m.%Y %H:%M:%S') del item['data_creare'] return item chrome_options = ChromeOptions() chrome_options.add_argument('--disable-dev-shm-usage') chrome_options.add_argument('--no-sandbox') chrome_options.add_argument('--disable-gpu') chrome_options.add_argument('--window-size=0,0') chrome_options.add_experimental_option('excludeSwitches', ['enable-automation']) if __name__ == '__main__': driver = webdriver.Chrome(options=chrome_options) thread = Thread(target=accept_cert, args=()) thread.start() driver.get("https://webserviced.anaf.ro/SPVWS2/rest/listaMesaje?zile=1") cookies = driver.get_cookies() driver.close() requests_cookies = {} for c in cookies: requests_cookies[c['name']] = c['value'] response = requests.get("https://webserviced.anaf.ro/SPVWS2/rest/listaMesaje?zile=10", cookies=requests_cookies).json() sorted_response = sorted(map(convert_and_extract_date, response['mesaje']), key=lambda x: x['created_date']) # response['mesaje'] = sorted_response # pprint.pprint(response) filtered_list = sorted([item for item in response['mesaje'] if item['tip'] != 'RECIPISA'], key=lambda x: x['created_date']) # Print the filtered list response['mesaje'] = filtered_list pprint.pprint(response)