Facebook - konwersja

Automatyzacja nudnych zadań z Pythonem. Nauka programowania. Wydanie II - ebook

Wydawnictwo:
Data wydania:
27 kwietnia 2021
Format ebooka:
EPUB
Format EPUB
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najpopularniejszych formatów e-booków na świecie. Niezwykle wygodny i przyjazny czytelnikom - w przeciwieństwie do formatu PDF umożliwia skalowanie czcionki, dzięki czemu możliwe jest dopasowanie jej wielkości do kroju i rozmiarów ekranu. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
, PDF
Format PDF
czytaj
na laptopie
czytaj
na tablecie
Format e-booków, który możesz odczytywać na tablecie oraz laptopie. Pliki PDF są odczytywane również przez czytniki i smartfony, jednakze względu na komfort czytania i brak możliwości skalowania czcionki, czytanie plików PDF na tych urządzeniach może być męczące dla oczu. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
, MOBI
Format MOBI
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najczęściej wybieranych formatów wśród czytelników e-booków. Możesz go odczytać na czytniku Kindle oraz na smartfonach i tabletach po zainstalowaniu specjalnej aplikacji. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
(3w1)
Multiformat
E-booki sprzedawane w księgarni Virtualo.pl dostępne są w opcji multiformatu - kupujesz treść, nie format. Po dodaniu e-booka do koszyka i dokonaniu płatności, e-book pojawi się na Twoim koncie w Mojej Bibliotece we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu przy okładce. Uwaga: audiobooki nie są objęte opcją multiformatu.
czytaj
na laptopie
Pliki PDF zabezpieczone watermarkiem możesz odczytać na dowolnym laptopie po zainstalowaniu czytnika dokumentów PDF. Najpowszechniejszym programem, który umożliwi odczytanie pliku PDF na laptopie, jest Adobe Reader. W zależności od potrzeb, możesz zainstalować również inny program - e-booki PDF pod względem sposobu odczytywania nie różnią niczym od powszechnie stosowanych dokumentów PDF, które odczytujemy każdego dnia.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na tablecie
Aby odczytywać e-booki na swoim tablecie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. Bluefire dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na czytniku
Czytanie na e-czytniku z ekranem e-ink jest bardzo wygodne i nie męczy wzroku. Pliki przystosowane do odczytywania na czytnikach to przede wszystkim EPUB (ten format możesz odczytać m.in. na czytnikach PocketBook) i MOBI (ten fromat możesz odczytać m.in. na czytnikach Kindle).
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na smartfonie
Aby odczytywać e-booki na swoim smartfonie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. iBooks dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
109,00

Automatyzacja nudnych zadań z Pythonem. Nauka programowania. Wydanie II - ebook

Komputer jest wszechstronnym narzędziem, które szybko i dokładnie wykona wiele pracochłonnych zadań. Wystarczy przekazać mu instrukcje w zrozumiałym dla niego języku. Takim jak Python, który jest łatwy do nauczenia się, pozwala pisać wyrazisty, zwięzły kod i stwarza imponujące możliwości dzięki niezliczonej liczbie rozszerzeń i bibliotek. Tymczasem wciąż wiele osób wykonuje żmudne i męczące zadania ręcznie: pracując z arkuszem kalkulacyjnym, plikami albo pocztą e-mail. Czas to zmienić - pracę, nad którą ślęczysz kilka dni, komputer wykona dokładniej w ciągu najwyżej kilku sekund!

Ta książka jest drugim wydaniem nietypowego podręcznika programowania w Pythonie. Dzięki niej nie zostaniesz mistrzem świata w kodowaniu, za to nauczysz się tworzyć programy, które oszczędzą Ci mnóstwo czasu i wysiłku. Nawet jeśli nigdy nie programowałeś, błyskawicznie opanujesz podstawy i zapoznasz się z obszerną biblioteką Pythona przeznaczoną do automatyzacji takich zadań jak pobieranie danych z witryn internetowych, odczytywanie dokumentów oraz operacje wymagające klikania myszą i wpisywania tekstu. To wydanie zawiera nowy rozdział poświęcony weryfikacji danych wejściowych, a także samouczki dotyczące automatyzacji pracy z arkuszami Google i pocztą Gmail oraz podpowiedzi związane z automatycznym uaktualnianiem plików CVS.

Sprawdź, jak zautomatyzować:

  • wyszukiwanie ciągu znaków w pliku lub wielu plikach
  • tworzenie, uaktualnianie, przenoszenie i zmiany nazw plików oraz katalogów
  • wyszukiwanie treści w sieci WWW oraz ich pobieranie
  • podział, łączenie, nakładanie znaku wodnego i szyfrowanie dokumentów PDF
  • wysyłanie powiadomień za pomocą wiadomości e-mail oraz SMS
  • wypełnianie formularzy internetowych

Nudne i męczące? Zleć to Pythonowi!

Spis treści


Podziękowania 19

Wprowadzenie 21

  • Do kogo jest skierowana ta książka? 22
  • Konwencje 23
  • Czym jest programowanie? 23
    • Co to jest Python? 24
    • Programiści nie muszą dobrze znać matematyki 24
    • Nigdy nie jest za późno na rozpoczęcie nauki programowania 25
    • Programowanie to aktywność kreatywna 26
  • O tej książce 26
  • Pobieranie i instalacja Pythona 29
  • Pobieranie i instalowanie edytora tekstu Mu 30
  • Uruchomienie edytora Mu 30
  • Uruchomienie środowiska IDLE 31
  • Powłoka interaktywna 31
  • Instalowanie modułów zewnętrznych 33
  • Jak otrzymać pomoc? 33
  • Sprytne zadawanie pytań dotyczących programowania 34
  • Podsumowanie 35

CZĘŚĆ I. PODSTAWY PROGRAMOWANIA W PYTHONIE

1. Podstawy Pythona 39

  • Wprowadzanie wyrażeń w powłoce interaktywnej 40
  • Liczby całkowite, zmiennoprzecinkowe i ciągi tekstowe 43
  • Konkatenacja i replikacja ciągu tekstowego 43
  • Przechowywanie wartości w zmiennych 45
    • Polecenia przypisania 45
    • Nazwy zmiennych 46
  • Twój pierwszy program 48
  • Analiza programu 49
    • Komentarze 49
    • Funkcja print() 50
    • Funkcja input() 50
    • Wyświetlanie imienia użytkownika 51
    • Funkcja len() 51
    • Funkcje str(), int() i float() 52
  • Podsumowanie 55
  • Pytania kontrolne 56

2. Kontrola przepływu działania programu 59

  • Wartości boolowskie 60
  • Operatory porównania 61
  • Operatory boolowskie 63
    • Binarne operatory boolowskie 63
    • Operator not 64
  • Łączenie operatorów boolowskich i porównania 64
  • Elementy kontroli przepływu działania programu 65
    • Warunek 65
    • Blok kodu 66
  • Wykonywanie programu 66
  • Polecenia kontroli przepływu działania programu 67
    • Polecenie if 67
    • Polecenie else 68
    • Polecenie elif 69
    • Pętla while 74
    • Polecenie break 78
    • Polecenie continue 79
    • Pętla for i funkcja range() 83
  • Import modułów 87
    • Polecenie from import 88
  • Wcześniejsze zakończenie programu za pomocą sys.exit() 88
  • Krótki program - odgadnij liczbę 89
  • Krótki program - kamień, papier, nożyce 91
  • Podsumowanie 95
  • Pytania kontrolne 95

3. Funkcje 97

  • Polecenie def wraz z parametrami 99
    • Definiowanie, wywoływanie, przekazywanie, argument i parametr 99
  • Wartość zwrotna funkcji i polecenie return 100
  • Wartość None 102
  • Argumenty w postaci słów kluczowych i funkcja print() 102
  • Stos wywołań 104
  • Zasięgi lokalny i globalny 106
    • Zmienne lokalne nie mogą być używane w zasięgu globalnym 107
    • W zasięgu lokalnym nie można używać zmiennych zdefiniowanych w innych zasięgach lokalnych 108
    • Zmienna globalna może być używana w zasięgu lokalnym 109
    • Zmienna lokalna i globalna o takiej samej nazwie 109
  • Polecenie global 110
  • Obsługa wyjątków 113
  • Krótki program - zigzag 115
  • Podsumowanie 117
  • Pytania kontrolne 117
  • Projekt praktyczny 118
    • Problem Collatza 118
    • Weryfikacja danych wyjściowych 119

4. Listy 121

  • Typ danych List 121
    • Pobieranie poszczególnych wartości listy za pomocą indeksu 122
    • Indeks ujemny 124
    • Pobieranie podlisty za pomocą wycinka 124
    • Pobieranie długości listy za pomocą polecenia len() 125
    • Zmiana wartości na liście za pomocą indeksu 125
    • Konkatenacja i replikacja listy 126
    • Usunięcie wartości listy za pomocą polecenia del 126
  • Praca z listą 126
    • Użycie pętli for wraz z listą 128
    • Operatory in i not in 129
    • Sztuczka pozwalająca na wiele jednoczesnych operacji przypisania 130
    • Używanie funkcji enumerate() z listą 131
    • Używanie funkcji random.choice() i random.shuffle() z listą 131
  • Operatory przypisania i zmiany wartości 132
  • Metody 133
    • Odszukanie wartości na liście za pomocą metody index() 133
    • Dodanie wartości do listy za pomocą metod append() i insert() 134
    • Usuwanie wartości z listy za pomocą metody remove() 135
    • Sortowanie wartości listy za pomocą metody sort() 136
    • Odwrócenie kolejności wartości listy za pomocą metody reverse() 137
  • Przykładowy program - Magic 8 Ball utworzony za pomocą listy 137
  • Typy danych w postaci sekwencji 139
    • Modyfikowalne i niemodyfikowalne typy danych 139
    • Typ danych krotka 142
    • Konwersja typu za pomocą funkcji list() i tuple() 143
  • Odwołania 143
    • Identyfikator i funkcja id() 145
    • Przekazywanie odwołania 147
    • Funkcje copy() i deepcopy() modułu copy 147
  • Krótki program - gra w życie 148
  • Podsumowanie 153
  • Pytania kontrolne 154
  • Projekty praktyczne 154
    • Kod z przecinkami 155
    • Rzut monetą 155
    • Obraz na podstawie macierzy 156

5. Słowniki i strukturyzacja danych 157

  • Typ danych Dictionary 157
    • Słownik kontra lista 158
    • Metody keys(), values() i items() 160
    • Sprawdzenie, czy klucz lub wartość istnieją w słowniku 162
    • Metoda get() 162
    • Metoda setdefault() 163
  • Eleganckie wyświetlanie danych 164
  • Użycie struktur danych do modelowania rzeczywistych rozwiązań 165
    • Plansza do gry w kółko i krzyżyk 166
    • Zagnieżdżone słowniki i listy 171
  • Podsumowanie 173
  • Pytania kontrolne 173
  • Projekty praktyczne 173
    • Weryfikacja słownika modelującego grę w szachy 174
    • Inwentarz w grze fantasy 174
    • Funkcja konwertująca listę na słownik dla inwentarza w grze fantasy 175

6. Operacje na ciągach tekstowych 177

  • Praca z ciągami tekstowymi 177
    • Literały ciągu tekstowego 178
    • Indeksowanie i wycinanie ciągów tekstowych 181
    • Użycie operatorów in i not in podczas pracy z ciągami tekstowymi 182
  • Umieszczenie ciągu tekstowego w innym 182
  • Użyteczne metody ciągu tekstowego 183
    • Metody upper(), lower(), isupper() i islower() 183
    • Metody typu isX() 185
    • Metody startswith() i endswith() 187
    • Metody join() i split() 188
    • Podział tekstu za pomocą metody partition() 189
    • Wyrównywanie tekstu za pomocą metod rjust(), ljust() i center() 190
    • Usunięcie białych znaków za pomocą strip(), rstrip() i lstrip() 192
  • Wartości liczbowe znaków pobrane za pomocą funkcji ord() i chr() 193
  • Kopiowanie i wklejanie ciągów tekstowych za pomocą modułu pyperclip 194
  • Projekt - schowek dla wielu ciągów tekstowych 195
    • Etap 1. Projekt programu i struktur danych 195
    • Etap 2. Obsługa argumentów wiersza poleceń 196
    • Etap 3. Skopiowanie odpowiedniej wiadomości 196
  • Projekt - dodanie wypunktowania do kodu znaczników Wiki 197
    • Etap 1. Kopiowanie i wklejanie ze schowka 198
    • Etap 2. Rozdzielenie wierszy tekstu i dodanie gwiazdki 199
    • Etap 3. Złączenie zmodyfikowanych wierszy 200
  • Krótki program - świńska łacina 200
  • Podsumowanie 204
  • Pytania kontrolne 205
  • Projekt praktyczny 206
    • Wyświetlenie tabeli 206
    • Symulator Zombie Dice 206

CZĘŚĆ II. AUTOMATYZACJA ZADAŃ

7. Dopasowanie wzorca za pomocą wyrażeń regularnych 213

  • Wyszukiwanie wzorców w tekście bez użycia wyrażeń regularnych 214
  • Wyszukiwanie wzorców w tekście z użyciem wyrażeń regularnych 216
    • Tworzenie obiektów wyrażeń regularnych 217
    • Dopasowanie obiektów wyrażeń regularnych 218
    • Przegląd dopasowania za pomocą wyrażenia regularnego 218
  • Jeszcze więcej o dopasowaniach wzorca za pomocą wyrażeń regularnych 219
    • Grupowanie z użyciem nawiasów 219
    • Dopasowanie wielu grup za pomocą potoku 221
    • Opcjonalne dopasowanie za pomocą znaku zapytania 222
    • Dopasowanie zera wystąpień lub większej liczby wystąpień za pomocą gwiazdki 222
    • Dopasowanie jednego wystąpienia lub wielu wystąpień za pomocą plusa 223
    • Dopasowanie określonych powtórzeń za pomocą nawiasu klamrowego 224
  • Dopasowanie zachłanne i niezachłanne 225
  • Metoda findall() 225
  • Klasy znaków 226
  • Utworzenie własnej klasy znaków 227
  • Znaki ^ oraz $ 228
  • Znak wieloznaczny 229
    • Dopasowanie wszystkiego za pomocą kropki i gwiazdki 229
    • Dopasowanie znaku nowego wiersza za pomocą kropki 230
  • Przegląd znaków stosowanych w wyrażeniach regularnych 231
  • Dopasowanie bez uwzględnienia wielkości znaków 232
  • Zastępowanie ciągu tekstowego za pomocą metody sub() 232
  • Zarządzanie skomplikowanymi wyrażeniami regularnymi 233
  • Połączenie opcji re.IGNORECASE, re.DOTALL i re.VERBOSE 234
  • Projekt - wyodrębnianie numeru telefonu i adresu e-mail 235
    • Etap 1. Utworzenie wyrażenia regularnego dopasowującego numer telefonu 236
    • Etap 2. Utworzenie wyrażenia regularnego dopasowującego adres e-mail 237
    • Etap 3. Wyszukanie wszystkich dopasowań w tekście umieszczonym w schowku 237
    • Etap 4. Połączenie dopasowań w celu utworzenia pojedynczego ciągu tekstowego do umieszczenia w schowku 238
    • Uruchomienie programu 239
    • Pomysły na podobne programy 239
  • Podsumowanie 240
  • Pytania kontrolne 240
  • Projekty praktyczne 242
    • Wykrywanie daty 242
    • Wykrywanie silnego hasła 242
    • Oparta na wyrażeniu regularnym wersja metody strip() 243

8. Weryfikacja danych wejściowych 245

  • Moduł PyInputPlus 246
    • Argumenty w postaci słów kluczowych min, max, greaterThan i lessThan 248
    • Argument w postaci słowa kluczowego blank 249
    • Argumenty w postaci słów kluczowych limit, timeout i default 250
    • Argumenty w postaci słów kluczowych allowRegexes i blockRegexes 251
    • Przekazanie do inputCustom() niestandardowej funkcji weryfikacji danych wejściowych 252
  • Projekt - zajęcie kogoś godzinami 253
  • Projekt - quiz z tabliczki mnożenia 255
  • Podsumowanie 257
  • Pytania kontrolne 258
  • Projekty praktyczne 258
    • Program przygotowujący kanapki 259
    • Własna wersja quizu z zakresu tabliczki mnożenia 259

9. Odczyt i zapis plików 261

  • Pliki i ścieżki dostępu do plików 261
    • Lewy ukośnik w systemie Windows, prawy ukośnik w systemach macOS i Linux 262
    • Używanie operatora / do złączania ścieżek dostępu 264
    • Bieżący katalog roboczy 266
    • Katalog domowy 267
    • Względne kontra bezwzględne ścieżki dostępu 267
    • Tworzenie nowych katalogów za pomocą funkcji os.makedirs() 267
    • Obsługa bezwzględnych i względnych ścieżek dostępu 268
    • Pobieranie fragmentów ścieżki dostępu do pliku 270
    • Ustalenie wielkości pliku i zawartości katalogu 273
    • Modyfikowanie listy plików za pomocą wzorców glob 274
    • Sprawdzenie poprawności ścieżki dostępu 276
  • Proces odczytu i zapisu pliku 277
    • Otwieranie pliku za pomocą funkcji open() 278
    • Odczyt zawartości pliku 279
    • Zapis pliku 280
  • Zapis zmiennych za pomocą modułu shelve 281
  • Zapis zmiennych za pomocą funkcji pprint.pformat() 283
  • Projekt - generowanie losowych plików quizu 284
    • Etap 1. Umieszczenie danych quizu w słowniku 285
    • Etap 2. Utworzenie pliku quizu i losowe umieszczenie odpowiedzi na pytania 286
    • Etap 3. Utworzenie odpowiedzi 287
    • Etap 4. Zapis treści w plikach quizu i odpowiedzi 288
  • Projekt - schowek przechowujący wiele elementów 289
    • Etap 1. Komentarze i konfiguracja pliku binarnego 290
    • Etap 2. Zapis zawartości schowka wraz ze słowem kluczowym 291
    • Etap 3. Wyświetlenie słów kluczowych i wczytanie treści powiązanej ze słowem kluczowym 291
  • Podsumowanie 292
  • Pytania kontrolne 293
  • Projekty praktyczne 293
    • Rozbudowa programu schowka przechowującego wiele elementów 294
    • Program Mad Libs 294
    • Wyszukiwanie wyrażenia regularnego 294

10. Organizacja plików 295

  • Moduł shutil 296
    • Kopiowanie plików i katalogów 296
    • Przenoszenie oraz zmiana nazwy plików i katalogów 297
    • Trwałe usunięcie plików i katalogów 298
    • Bezpieczne usuwanie danych za pomocą modułu send2trash 299
  • Przejście przez drzewo katalogu 300
  • Kompresja plików za pomocą modułu zipfile 302
    • Odczyt pliku w formacie ZIP 302
    • Wyodrębnianie plików z archiwum ZIP 303
    • Utworzenie i dodawanie elementów do archiwum ZIP 304
  • Projekt - zmiana plików z datami w stylu amerykańskim na daty w stylu europejskim 304
    • Etap 1. Utworzenie wyrażenia regularnego dla daty w stylu amerykańskim 305
    • Etap 2. Identyfikacja w nazwie pliku fragmentów określających datę 307
    • Etap 3. Utworzenie nowej nazwy pliku i zmiana nazw plików 308
    • Pomysły na podobne programy 309
  • Projekt - utworzenie archiwum ZIP będącego kopią katalogu 309
    • Etap 1. Ustalenie nazwy pliku archiwum ZIP 309
    • Etap 2. Utworzenie nowego archiwum ZIP 310
    • Etap 3. Przejście przez drzewo katalogu i dodanie plików do archiwum ZIP 311
    • Pomysły na podobne programy 312
  • Podsumowanie 312
  • Pytania kontrolne 313
  • Projekty praktyczne 313
    • Kopiowanie selektywne 314
    • Usunięcie niepotrzebnych plików 314
    • Wypełnienie przerw 314

11. Usuwanie błędów 315

  • Zgłaszanie wyjątku 316
  • Pobranie stosu wywołań w postaci ciągu tekstowego 318
  • Asercje 319
    • Użycie asercji w projekcie symulacji ulicznej sygnalizacji świetlnej 321
  • Rejestracja danych 322
    • Użycie modułu logging 323
    • Nie przeprowadzaj procesu usuwania błędów za pomocą funkcji print() 325
    • Poziomy rejestrowania informacji 325
    • Wyłączenie rejestrowania informacji 326
    • Rejestrowanie informacji w pliku 327
  • Debugger edytora Mu 327
    • Kontynuuj 328
    • Krok do wewnątrz 329
    • Przekrocz 329
    • Krok na zewnątrz 329
    • Zatrzymaj 329
    • Debugowanie programu sumującego liczby 329
    • Punkty kontrolne 331
  • Podsumowanie 333
  • Pytania kontrolne 333
  • Projekt praktyczny 334
    • Debugowanie programu symulującego rzut monetą 334

12. Pobieranie danych z internetu 337

  • Projekt - mapIt.py z użyciem modułu webbrowser 338
    • Etap 1. Ustalenie adresu URL 339
    • Etap 2. Obsługa argumentów wiersza poleceń 339
    • Etap 3. Obsługa zawartości schowka i uruchomienie przeglądarki WWW 340
    • Pomysły na podobne programy 341
  • Pobieranie plików z internetu za pomocą modułu requests 341
    • Pobieranie strony internetowej za pomocą funkcji requests.get() 342
    • Sprawdzenie pod kątem błędów 343
  • Zapis pobranych plików na dysku twardym 344
  • HTML 345
    • Zasoby pomagające w poznawaniu języka HTML 346
    • Krótkie wprowadzenie 346
    • Wyświetlenie kodu źródłowego HTML strony internetowej 347
    • Wyświetlenie oferowanych przez przeglądarkę WWW narzędzi programistycznych 348
    • Użycie narzędzi programistycznych do wyszukiwania elementów HTML 350
  • Przetwarzanie kodu HTML za pomocą modułu bs4 352
    • Utworzenie obiektu BeautifulSoup na podstawie kodu HTML 352
    • Wyszukiwanie elementu za pomocą metody select() 353
    • Pobieranie danych z atrybutów elementu 355
  • Projekt - wyświetlenie wyników wyszukiwania 356
    • Etap 1. Pobranie argumentów wiersza poleceń i żądanie strony wyszukiwarki 357
    • Etap 2. Wyszukanie wszystkich wyników 357
    • Etap 3. Otworzenie kart przeglądarki WWW dla poszczególnych wyników 358
    • Pomysły na podobne programy 359
  • Projekt - pobranie wszystkich komiksów z witryny XKCD 360
    • Etap 1. Projekt programu 361
    • Etap 2. Pobranie strony internetowej 362
    • Etap 3. Odszukanie i pobranie obrazu komiksu 363
    • Etap 4. Zapis obrazu i odszukanie poprzedniego komiksu 363
    • Pomysły na podobne programy 365
  • Kontrolowanie przeglądarki WWW za pomocą modułu selenium 365
    • Uruchomienie przeglądarki WWW kontrolowanej przez moduł selenium 366
    • Wyszukanie elementów na stronie 368
    • Kliknięcie na stronie 370
    • Wypełnianie i wysyłanie formularzy sieciowych 370
    • Symulacja naciśnięcia klawiszy specjalnych 371
    • Klikanie przycisków przeglądarki WWW 372
    • Więcej informacji na temat modułu selenium 372
  • Podsumowanie 372
  • Pytania kontrolne 373
  • Projekty praktyczne 374
    • Klient poczty działający w wierszu poleceń 374
    • Pobieranie obrazów z witryny internetowej 374
    • 2048 374
    • Weryfikacja łącza 375

13. Praca z arkuszami kalkulacyjnymi programu Excel 377

  • Dokumenty Excela 378
  • Instalacja modułu openpyxl 378
  • Odczyt dokumentów Excela 379
    • Otwieranie istniejącego dokumentu Excela za pomocą openpyxl 379
    • Pobranie arkuszy ze skoroszytu 380
    • Pobieranie komórek z arkuszy 380
    • Konwersja między literami kolumn i liczbami 382
    • Pobieranie wierszy i kolumn z arkuszy 383
    • Skoroszyty, arkusze i komórki 385
  • Projekt - odczyt danych z arkusza kalkulacyjnego 385
    • Etap 1. Odczyt danych z arkusza kalkulacyjnego 386
    • Etap 2. Wypełnienie struktury danych 387
    • Etap 3. Zapis wyników do pliku 389
    • Pomysły na podobne programy 390
  • Zapis dokumentów Excela 390
    • Tworzenie i zapisywanie dokumentów Excela 391
    • Tworzenie i usuwanie arkuszy kalkulacyjnych 391
    • Zapis wartości w komórkach 392
  • Projekt - uaktualnienie skoroszytu 393
    • Etap 1. Przygotowanie struktury danych wraz z uaktualnionymi informacjami 394
    • Etap 2. Sprawdzenie wszystkich wierszy i skorygowanie nieprawidłowych cen 395
    • Pomysły na podobne programy 396
  • Ustawienie stylu czcionki komórek 396
  • Obiekt Font 397
  • Formuły 398
  • Dostosowanie wierszy i kolumn do własnych potrzeb 400
    • Ustalenie wysokości wiersza i szerokości kolumny 400
    • Łączenie i dzielenie komórki 401
    • Zablokowane okienka 402
  • Wykresy 403
  • Podsumowanie 404
  • Pytania kontrolne 405
  • Projekty praktyczne 406
    • Program tworzący tabliczkę mnożenia 406
    • Program wstawiający pusty wiersz 407
    • Program zmieniający położenie komórek arkusza kalkulacyjnego 407
    • Przeniesienie zawartości pliku tekstowego do arkusza kalkulacyjnego 408
    • Przeniesienie zawartości arkusza kalkulacyjnego do plików tekstowych 409

14. Praca z Arkuszami Google 411

  • Instalacja i konfiguracja EZSheets 411
    • Pobranie danych uwierzytelniających i plików tokenów 412
    • Unieważnienie pliku danych uwierzytelniających 414
  • Obiekt skoroszytu 415
    • Tworzenie, przekazywanie i wyświetlanie skoroszytów 415
    • Atrybuty skoroszytu 417
    • Pobieranie i przekazywanie skoroszytów 418
    • Usuwanie skoroszytu 419
  • Obiekt arkusza 419
    • Odczytywanie i zapisywanie danych 420
    • Tworzenie i usuwanie arkuszy 425
    • Kopiowanie arkusza 426
  • Praca z ograniczeniami nakładanymi przez Arkusze Google 427
  • Podsumowanie 428
  • Pytania kontrolne 428
  • Projekty praktyczne 429
    • Pobieranie danych Formularzy Google 429
    • Konwertowanie skoroszytów na inne formaty 429
    • Wyszukiwanie błędów w skoroszytach 429

15. Praca z dokumentami PDF i Worda 431

  • Dokumenty w formacie PDF 431
    • Wyodrębnianie tekstu z dokumentu PDF 432
    • Deszyfrowanie dokumentu PDF 434
    • Tworzenie dokumentów PDF 435
  • Projekt - połączenie wybranych stron z wielu dokumentów PDF 440
    • Etap 1. Wyszukanie wszystkich plików w formacie PDF 441
    • Etap 2. Otworzenie poszczególnych dokumentów PDF 442
    • Etap 3. Dodanie poszczególnych stron 442
    • Etap 4. Zapis dokumentu wynikowego 443
    • Pomysły na podobne programy 444
  • Dokumenty procesora tekstu Microsoft Word 444
    • Odczyt dokumentów Worda 445
    • Pobranie pełnego tekstu z pliku w formacie .docx 446
    • Nadawanie stylu akapitom i obiektom Run 447
    • Utworzenie dokumentu Worda z niestandardowymi stylami 449
    • Atrybuty obiektu Run 449
    • Zapis dokumentów Worda 451
    • Dodanie nagłówków 453
    • Dodanie znaku podziału wiersza i strony 454
    • Dodanie obrazu 454
  • Tworzenie dokumentu PDF na podstawie dokumentu Worda 455
  • Podsumowanie 455
  • Pytania kontrolne 456
  • Projekty praktyczne 457
    • PDF Paranoja 457
    • Własne zaproszenia utworzone w dokumencie Worda 457
    • Program łamiący hasło dokumentu PDF za pomocą ataku typu brute force 458

16. Praca z plikami CSV i danymi JSON 461

  • Moduł csv 462
    • Obiekt reader 463
    • Użycie pętli for do odczytu danych z obiektu reader 464
    • Obiekt writer 464
    • Argumenty w postaci słów kluczowych delimiter i lineterminator 466
    • Obiekty CSV DictReader i DictWriter 467
  • Projekt - usunięcie nagłówka z pliku CSV 469
    • Etap 1. Iteracja przez poszczególne pliki CSV 470
    • Etap 2. Odczyt zawartości pliku CSV 470
    • Etap 3. Zapis pliku CSV bez pierwszego wiersza 471
    • Pomysły na podobne programy 472
  • JSON i API 473
  • Moduł json 474
    • Odczyt danych JSON za pomocą funkcji loads() 474
    • Zapis danych w formacie JSON za pomocą funkcji dumps() 475
  • Projekt - pobieranie bieżących danych prognozy pogody 475
    • Etap 1. Pobranie z wiersza poleceń informacji o lokalizacji 476
    • Etap 2. Pobranie danych w formacie JSON 477
    • Etap 3. Wczytanie danych w formacie JSON i wyświetlenie prognozy pogody 478
    • Pomysły na podobne programy 480
  • Podsumowanie 480
  • Pytania kontrolne 481
  • Projekty praktyczne 481
    • Konwerter danych w formacie Excel do formatu CSV 481

17. Czas, harmonogram zadań i uruchamianie programów 483

  • Moduł time 483
    • Funkcja time.time() 484
    • Funkcja time.sleep() 485
  • Zaokrąglanie liczb 486
  • Projekt - superstoper 486
    • Etap 1. Przygotowanie programu do pomiaru czasu 487
    • Etap 2. Monitorowanie i wyświetlenie czasu okrążenia 488
    • Pomysły na podobne programy 489
  • Moduł datetime 490
    • Typ danych timedelta 491
    • Pauza aż do chwili osiągnięcia określonej daty 493
    • Konwersja obiektu datetime na ciąg tekstowy 493
    • Konwersja ciągu tekstowego na obiekt datetime 495
  • Przegląd funkcji czasu w Pythonie 495
  • Wielowątkowość...
Kategoria: Programowanie
Zabezpieczenie: Watermark
Watermark
Watermarkowanie polega na znakowaniu plików wewnątrz treści, dzięki czemu możliwe jest rozpoznanie unikatowej licencji transakcyjnej Użytkownika. E-książki zabezpieczone watermarkiem można odczytywać na wszystkich urządzeniach odtwarzających wybrany format (czytniki, tablety, smartfony). Nie ma również ograniczeń liczby licencji oraz istnieje możliwość swobodnego przenoszenia plików między urządzeniami. Pliki z watermarkiem są kompatybilne z popularnymi programami do odczytywania ebooków, jak np. Calibre oraz aplikacjami na urządzenia mobilne na takie platformy jak iOS oraz Android.
ISBN: 978-83-283-7490-4
Rozmiar pliku: 14 MB

BESTSELLERY

Kategorie: