Twórz Własne Automatyzacje
3 godz. 14 min · Make · Biznes i Automatyzacje
Adam GospodarczykKorzystając z różnych narzędzi, na przykład do obsługi mailingu, masz do dyspozycji na ogół kilka wbudowanych integracji - przykładowo połączenie z kalendarzem czy bramką płatności. Wyobraź sobie, że takie narzędzie możesz połączyć praktycznie z dowolnym innym, nawet jeśli nie ma go na liście. To właśnie potencjał Make, które umożliwi takie automatyzacje.
Jeśli znasz Zapier, Make to podobna koncepcja, ale daje dużo bardziej zaawansowane możliwości, jest dużo tańsza (lub darmowa) a dodatkowo, ma naszym zdaniem bardziej przyjazny i czytelny interfejs zwłaszcza przy tworzeniu rozgałęzionych scenariuszy. Tworzenie automatyzacji z Make to czysta przyjemność i zdrowa porcja dopaminy!
Co najważniejsze, Make umożliwia tworzenie automatyzacji bez użycia ani jednej linii kodu! To jak programowanie 2.0, gdzie rezultaty widzisz i testujesz w prostym, wizualnym edytorze. To najłatwiejszy sposób aby zacząć przygodę z programowaniem i nowoczesnym podejściem do technologii no-code i low-code.
Mimo, że Make jest natywnym środowiskiem no-code, osoby, które nieco lepiej rozumieją zasady działania protokołu HTTP i API i mają podstawy programowania w JS, otrzymują zupełnie nowe możliwości tworzenia oprogramowania, w sposób wizualny i prostszy niż kiedykolwiek. Jeśli osoby początkujące z Make stają się programistami, programiści stają się superbohaterami!
Wyjątkowe w Make jest podejście do tworzenia automatyzacji wizualnie, gdzie bardzo czytelne jest całe flow scenariusza i to, jak przepływają w nim dane. Zaawansowane możliwości jak stosowanie filtrów czy funkcji sprawia, że w tak prostym interfejsie w zasadzie nie ma zadań niemożliwych!
Z dowolnego narzędzia możesz wysłać dane w postaci Webhooka do Make, które zostaną natychmiastowo odebrane. Następnie możesz łatwo przekazać je w dowolne miejsce i do dowolnego narzędzia - na przykład Airtable, z którego często korzystamy aby gromadzić dane, HubSpot'a, Asany czy wysłać powiadomienie SMS, e-mail, Slack. Całość zajmie Ci kilka minut.
Ten kurs jest przeznaczony dla każdej osoby, która chce pracować wydajniej i zatrudnić roboty (automatyzacje), które wykonają za nią powtarzalne zadania. Dzięki temu, zwiększysz efektywność swojej pracy oraz zostaniesz bohaterem automatyzacji w swojej firmie. Osoby, które przerobiły kurs HTTP i API, a także programiści, mogą wycisnąć z tego kursu jeszcze więcej, na dobre zmieniając swoje podejście do automatyzacji. Polecamy wcześniejsze przerobienie przynajmniej kursu HTTP i API, aby lepiej zrozumieć omawiane zagadnienia.
W tej lekcji powiem Ci wszystko co wiem na temat modułu Text parser oraz tego jak możesz go
wykorzystać na potrzeby pracy z tekstem oraz wyszukiwania w nim różnego rodzaju
informacji, a nawet budowania prostych Web Scraper'ów.
Jednak zanim zaczniemy jest tutaj mała gwiazdka.
Moduł ten w dużym stopniu wymaga
znajomości wyrażeń regularnych i z tego powodu raz jeszcze zachęcam Cię do
obejrzenia mojego warsztatu dostępnego na Eduweb.pl właśnie w temacie wyrażeń regularnych.
Z pewnością okaże się to dla Ciebie pomocne w wykorzystaniu modułu Text parser.
Jednocześnie też zaznaczę, że jest tu
kilka opcji, z których możesz skorzystać nawet bez tej wiedzy.
Zatem zachęcam Cię do tego, aby zostać ze
mną w tej lekcji, ponieważ być może coś Ci się przyda, a jednocześnie być może
zachęcam Cię do sięgnięcia po mój warsztat i tym samym nauki wyrażeń regularnych.
W każdym razie zaczniemy teraz od czegoś
prostego i czegoś, co w ogóle nie jest związane z modułem Text parser.
Mianowicie wykorzystamy moduł HTTP, a konkretnie Make a request.
Do tego aby wykonać sobie zapytanie na adres.
Eduweb.pl/wydarzenia
w celu pobrania sobie zawartości tej strony.
Mianowicie jeżeli ten moduł wykonamy w odpowiedzi otrzymamy kod HTML tej strony
zawierający różnego rodzaju linki, zdjęcia itd.
Taki kod jak widzisz dla zwykłego człowieka jest raczej mało czytelny i
jednocześnie odnalezienie w nim jakichkolwiek informacji jest dość trudne.
Jednak już w momencie gdy sięgniemy po moduł Text parser możemy np.
wykorzystać moduł HTML to text, aby przekazać do niego całą zawartość kodu HTML i w
zamian otrzymać wartość tekstową pozbawioną znaczników HTML.
Co prawda akurat w tym przypadku nadal tekst może być mało zrozumiały dla
człowieka, ale jednocześnie też jak widzisz, w niektórych sytuacjach taka
zamiana tekstu czy pozbycie się znaczników HTML może okazać się przydatne chociażby
do tego, aby tak jak w tym przypadku pobrać jakieś elementy listy.
I swoją drogą muszę tutaj podkreślić, że tak naprawdę wykorzystaliśmy tutaj
wyrażenia regularne, a jednocześnie w ogóle nie musieliśmy po nie sięgać.
Dodatkowo zaznaczę jeszcze, że możemy tutaj wybrać rodzaj znacznika łamiącego
linię oraz ewentualnie modyfikować nagłówki.
Ten moduł w połączeniu z modułem HTTP może okazać się naprawdę bardzo pomocny.
Podobnie zresztą jak moduł Get Element from HTML, który działa zasadniczo tak samo,
z tą różnicą jednak, że możemy tutaj wybrać spośród trzech znaczników HTML.
Mianowicie możemy tutaj przechwycić obrazki, linki bądź znaczniki iframe.
Dzięki temu, jeżeli wykonamy naszą
automatyzację, to w efekcie otrzymamy tutaj wszystkie znaczniki IMG, a
dodatkowo mamy tutaj dostęp do atrybutów SRC.
Dzięki temu, jeżeli podstawimy tutaj pełną
domenę, będziemy mogli pobrać te obrazki i zapisać np.
na naszym dysku Google.
Zatem jak widzisz, ten moduł możemy wykorzystać do tego, aby pobierać proste
informacje ze stron www i wykorzystywać je do swoich potrzeb.
Coś takiego może Ci się przydać np.
w sytuacji, gdy będziesz importować
wszystkie wpisy na swoim blogu w celu utworzenia automatyzacji w Airtable.
Jednocześnie też jak widzisz możliwości
tego modułu są dość ograniczone i z tego powodu zachęcam Cię do obejrzenia mojego
warsztatu Cookie Monster, w ramach którego pokażę Ci jak wykorzystać narzędzie Simple
scraper do łatwego pobierania informacji ze stron internetowych.
Tymczasem jednak wróćmy do naszego Text
parser'a i pokażę Ci tutaj kolejny moduł, który również może Ci się przydać.
Co prawda zdarzyło nam się już z niego korzystać, bo w skrócie chodzi w nim o to,
że możemy w tym miejscu przekazać jakiś tekst np.
zautomatyzowani.pl, a następnie zamienić końcówkę pl na np.
wartość com.
Dzięki temu jeżeli wykonamy sobie teraz ten moduł no to jak się pewnie domyślasz końcówka
pl zostanie zamieniona na końcówkę com.
Inaczej mówiąc dokonaliśmy tutaj prostej zamiany tekstu, natomiast teraz tego nie
widać, ale tak naprawdę wykorzystaliśmy tutaj wyrażenia regularne.
Dodatkowo mamy tutaj opcje pochodzące właśnie z wyrażeń regularnych,
które dodatkowo pozwalają nam modyfikować zachowanie tego modułu.
Przykładowo, jeżeli w ramach naszego
tekstu mielibyśmy tutaj dwa adresy i ponownie wykonali ten moduł,
to okaże się, że nie do końca zadziała tak, jakbyśmy tego oczekiwali.
Mianowicie rzeczywiście końcówka pierwszego adresu została tutaj
zamieniona, natomiast w przypadku drugim pozostał on bez zmian.
Wynika to z faktu, że nie została tutaj
zaznaczona opcja Global match, która dba o to, aby jak sama nazwa wskazuje dokonać
zamiany na wszystkich powtórzeniach, które występują w tekście.
Jeżeli ją teraz zaznaczymy i wykonamy nasz
moduł, to rzeczywiście wszystkie końcówki zostaną zamienione.
Następnie możemy tutaj włączyć lub wyłączyć czułość na wielkie i małe litery.
I myślę, że to jest akurat dla Ciebie jasne.
Ale jednocześnie poniżej mamy dwie
dodatkowe opcje, które nie do końca mogą okazać się jasne.
Mianowicie tutaj w grę wchodzi już znajomość wyrażeń regularnych, w przypadku
których mamy znaczniki początku oraz końca linii.
Przykładowo dolar oznacza zakończenie
linii i jeżeli umieścimy go na końcu naszego wzorca, to w przypadku nie
zaznaczenia opcji multi line nasz cały tekst zostanie potraktowany jako jedność.
Oznacza to, że jeżeli wykonamy nasz moduł to zostanie zamieniona tylko druga końcówka,
ponieważ wyłącznie ona pasuje tutaj do naszego wzorca.
I zresztą mogę Ci to udowodnić przenosząc teraz ten przykład na stronę regex101.com.
mianowicie jak widzisz tutaj możemy wpisać nasz wzór, a następnie zastosować
odpowiednie flagi czy też opcje, które mamy tutaj do dyspozycji.
Jak widzisz w tym przypadku jest ich
trochę więcej, natomiast nas interesuje wyłączenie opcji multi line .
Dzięki temu jeżeli skopiujemy sobie tutaj te
nasze adresy, to widzimy, że rzeczywiście został tutaj zaznaczony tylko ten drugi.
Jeżeli jednak opcja multi line zostanie
włączona, to zostanie zaznaczony zarówno pierwszy jak i drugi.
I dzięki temu nasza automatyzacja w
momencie gdy będzie miała włączoną tą opcję, zamieni zarówno końcówkę pierwszego
jak i drugiego adresu, czego potwierdzenie mamy tutaj.
Powodem tego jest fakt, że opcja multi
line zamienia działanie znaczników początku oraz końca linii w taki sposób,
aby traktować każdą linię jako osobny ciąg znaków.
Zatem w momencie, gdy ona jest zaznaczona,
każda końcówka linii rzeczywiście dopasowana jest do tego dolara.
Na dość podobnej zasadzie działa opcja single line, z tą różnicą, że nie ma ona
nic wspólnego z opcją multi line, tylko ze zmianą zachowania znaku kropki.
Mianowicie jeżeli wrócimy do regex101.com to zobaczymy, że jeżeli wpiszemy tutaj
kropkę to zostaną tutaj zaznaczone wszystkie znaki oprócz znaku białej linii.
Jeżeli jednak zaznaczymy sobie tutaj opcję single line
to być może nie będzie to widoczne na nagraniu, natomiast delikatnie został
tutaj zaznaczony właśnie znak łamania linii.
Oznacza to mniej więcej tyle, że w momencie, gdy jest włączona opcja single
line, nasze wyrażenie regularne traktowane jest jakby było zapisane w jednej linii.
Oznacza to, że jeżeli zapiszemy sobie tutaj
plus, który sprawia, że poprzedni znak powtórzony jest nieskończoną ilość razy,
czyli w tej sytuacji zaznaczamy dowolny znak występujący dowolną ilość razy.
Zatem w efekcie nasze wyrażenie jest dopasowane do całego przekazanego tekstu.
Jeżeli jednak wyłączymy sobie opcję single
line, to zwróć uwagę, że niezależnie zostały tutaj zaznaczone pojedyncze linie.
I właśnie na tym polega różnica pomiędzy
multi line , single line oraz opcją Global metch.
Podsumowując jednak, to co musisz wiedzieć na temat tych opcji to fakt, że single
line oraz multi line nie wyklucza się wzajemnie, tylko po prostu zmienia
zachowanie znaków początku oraz końca linii lub też w przypadku single line
zmienia zachowanie kropki, która reaguje lub nie reaguje na znak łamania linii.
Tak czy inaczej to co chciałem Ci powiedzieć na temat wyrażeń regularnych
oraz tych opcji zostało tutaj powiedziane i jedyne co nam tutaj zostało to ostatni
moduł umożliwiający nam zaznaczanie wybranego tekstu.
Tutaj również musimy wykorzystywać znajomość wyrażeń regularnych, aczkolwiek
nic nie stoi na przeszkodzie, aby wyrażeniem regularnym było np.
moje imię.
Dzięki temu jeżeli wykonamy ten moduł, to w tej chwili mamy tutaj pustą odpowiedź ze
względu na to, że musimy zastosować tutaj opcję multi line oraz Global match.
Teraz jeżeli ponownie wykonamy sobie ten moduł moje imię zostanie tutaj zaznaczone,
jednak nie mamy tutaj informacji o znalezionej wartości, tylko po prostu
informację o tym, że wartość została znaleziona.
Aby jednak została zwrócona również
odnaleziona wartość, będziemy musieli umieścić nasz wzorzec w nawiasie.
Jeżeli ponownie wykonam teraz ten moduł,
no to oprócz informacji o tym, że wzorzec został dopasowany, znajduje się tutaj
również informacja o odnalezionej wartości.
Dodatkowo mógłbym zastosować tutaj
znacznik lub, a następnie przekazać tutaj kolejne imię oraz kolejne.
No i teraz wykonanie tego modułu sprawi, że wszystkie imiona zostaną zaznaczone i
dodatkowo zostaną też zwrócone tutaj odpowiednie wartości.
Jak widzisz, znajomość wyrażeń regularnych
jest tutaj naprawdę niezbędna do tego, aby pracować z tym modułem.
Natomiast jednocześnie mam dla Ciebie dobrą wiadomość.
Przede wszystkim warsztat, o którym
wspomniałem naprawdę da Ci niezbędną wiedzę, która pozwoli Ci niemal w ciągu
pół godziny pracować z wydarzeniami regularnymi.
Poza tym gorąco zachęcam Cię do tego, aby przejść do serwisu regex101.com,
ponieważ tutaj pisząc wyrażenia
regularne nie tylko od razu możesz je sobie testować, ale jednocześnie masz
tutaj wyjaśnienia mówiące Ci o tym, co tutaj dokładnie się dzieje.
Poza tym, pomimo tego, że wyrażenia regularne są raczej wspólne dla każdego
języka programowania, to jednak występują pomiędzy nimi różnice.
Z tego powodu dobrze jest tutaj zaznaczyć opcję ECMAScript, a konkretnie JavaScript,
ponieważ to dokładnie na niej opiera się Integromat.
No i ostatnią wskazówką, którą mam dla Ciebie jest sięgnięcie po szablony, które
dostępne są na stronie Integromatu, w ramach których znajdziesz przykłady
wykorzystania modułu Text parser, a także wykorzystania wyrażeń regularnych np.
do tego, aby odnaleźć numery telefonów znajdujące się w tekście i w ten sposób
umożliwić sobie wysłanie na nie wiadomości SMS.
Oczywiście w tym konkretnym przypadku
musisz upewnić się, czy wyrażenie regularne jest np.
dopasowane do polskich numerów telefonu. Natomiast jednocześnie
może okazać się, że znajdziesz tutaj
gotowe wyrażenia regularne, które po prostu wystarczy skopiować i wkleić.
Podobnie też wyrażenia regularne możesz
wyszukiwać normalnie w internecie wpisując po angielsku problem, który chcesz
rozwiązać, a następnie dopisując frazę regex lub też regular expression.
W efekcie znajdziesz zwykle wątki na forum, np.
Stack Overflow, w ramach których znajdziesz albo podpowiedzi jak zbudować
dane wyrażenie regularne lub też od razu zostanie Ci podsunięte rozwiązanie.
I tym sposobem zbliżyliśmy się już do
końca tej lekcji, bo w temacie Text parser'a to byłoby już na tyle.
Gorąco zachęcam Cię do przejrzenia wszystkich przykładów, które masz tutaj.
I jednocześnie raz jeszcze odsyłam Cię do
mojego warsztatu na temat wyrażeń regularnych.
Teraz dziękuję Ci za uwagę i zapraszam Cię do kolejnych materiałów.