Python integracja V2

7
Dobra moze i opisałem chaotycznie ale przynajmniej hej
Dalej nie dziala i nie umiem tego ogarnac

woli wyjasnienia, nie jestem programistą, moja praca w ogole nie polega na pisaniu kodow, taka zajawka i do tego moge ułatwić sobie zycie automatyzujac pewne procesy. Wiekszosc kodu rozumiem i znam podstawy pythona, lecz bez GPT kaplica
Python integracja V2
screenshot przeplywu napisanego w power automate

*niezwiazane z obecnym projektem*

W mojej firmie z jakiegos powodu nie ma automatyzacji zamowień na Francje. Każdy inny kraj dziala normalnie, Francja nie.
Mam swój team (tak hehe ale mieszkam w Holandi i tu mamy teamy) i za kazdym razem gdy ktos przychodzi z zamowieniem na ten  updały kraj musze wyciągnąć informacje o kliencie z bazy danych i wprowadzić na strone przewoznika zeby dostać etykiete na paczke. W tym przypadku SAP.
Niby nic ale gdy mam 20 osob z czego każda ma srednio 5 zamowień na Francje każdego, kurwica mnie trafia 
Python integracja V2
Wiec wpadlem na pomysl zeby zautomatyzować caly proces udostepniając na kazdy firmowy komputer program, nad ktorym dzielnie pracuje co pozwoli mi zaoszczedzic mnostwo czasu i parę niewinnych istnień. Przechodzimy do procesu i postaram sie to wytlumacz na tyle ile jestem w stanie, tak żeby kazdy zainteresowany mniej wiecej zrozumial o co sie rozchodzi. 
1. Graficzny interfejs
Przy użyciu biblioteki tkinter do zacnego programu jakim jest Python. Kazdy (bez wyątku!) jest w stanie napisac taki interfejs w max 30 minut. pare linijek kodu.
Nic specjalnego, nie ma się tutaj zatrzymywać lećmy dalej
Python integracja V2
2. Wyciągnięcie danych o kliencie z SAP
i tu zaczynają sie schody.
Jako że nie umiem zintegrować sie z SAPem ponieważ wiekszość funkcji skryptowania jest wylączona a dział IT ma wyjebane i tego nie włączy, postanowiłem uruchomic program tak bardzo automatycznie jak tylko potrafie. Chce za pomocą skryptu wysłać fizyce kliknęcie (jednoczesnie blokując uzytkownikowi klawiature i mysz na pare sekund, żeby nic nie odjebał) któro uruchomi komende (fachowo tranzakcje), w ktorej bede mogł znaleźć informacje o kliencie. 
Python integracja V2
Tranzakcja VL03n
problem pojawia gdy probuje zlokalizować pole tekstowe w ktorym skrypt wpisze numer zamówienia ktory poda pracownik. ale przejdzmy dalej
Python integracja V2
po wejsciu do zamówienia klikamy mała ikonke do ktorej nie ma skrótu klawiszowego co bardzo utrudnia moje zadanie 
Python integracja V2
Niech cie piekło pochłonie
wyskakują mi dane klienta (mam nadziele że sie nie obrazi hrabia)
python robi screenshota i wkleja do konkretnego folderu dajmy na to "sap ss"
Python integracja V2
pozostała część juz jest stworzona i działa przyzwocie ale z grubsza opisze caly proces. wskazówki i tipy mile widziane.
3. Ekstrakcja danych klienta przy użyciu Modelu rozpoznawania tekstu

Jako że na power automate znam sie lepiej, używam tego narzędzia do wydobycia informacji (ekstrakcji) ze zdjecia.
Proces odbywa sie w chmurze i rozpoczyna sie automatycznie gdy nowy obraz pojawi sie w folderze "sap ss" 
Python integracja V2
Python integracja V2
proces automatycznego wydobycia danych klienta, posortowanie i wpisanie do arkusza excel przy uzyciu Power Automate
Python integracja V2
Tabela po wpisaniu danych przez Power Automate
4. Wypełnienie formularza na stronie DHL
PA daje cyne do skryptu pythona ze plik jest gotowy.
Python przy uzyciu biblioteki Pandas odczytuje dane z excela. Nastepnie przy uzyciu biblioteki Selenium uruchamia przeglądarke chrome w trybie headless (bezgłowy) czyli bez graficznego interfejsu. Wypełnia formularz i zapisuje etykiete w formacie .pdf. To się dzieje w tle wiec nie wyskakuje mi zadne okno.
Python integracja V2
5. Konwertowanie i drukowanie etykiety
Etykieta jest w formacie .pdf a tak sie sklada, że moja drukarka nie obsluguje takiego formatu wiec skrypt konwertuje go na jpg i dopiero wysyla do urzadzenia. Co w rezultacie skutkuje upragnioną etykietą.
Proces troche skrócilem bo nie chce mi sie juz pisać zwlaszcza ze trzeba walczyc z sapem. Dodam tylko że przygode z pythonem zacząłem pare tygodni temu więc na pewno idzie to zrobić łatwiej. Dodatkowo cały projekt staram sie robić w godzinach pracy i do tego chuja sie na tym znam, robie losowe rzeczy a one działają. Traktuje to bardziej jak ciekawą zajawke, niż część mojej pracy.
Wypierdalam i życze spokojnej nocy :] 
0.044710874557495