Routineaufgaben mit Python automatisieren, 2nd Edition

Book description

Python eignet sich sehr gut als Einstieg und für viele Standardaufgaben.

Wie man mit Python 3 Aufgaben in Sekundenschnelle erledigen kann, die sonst viel Zeit in Anspruch nehmen würden, lernt man mit diesem Buch. Programmiererfahrung ist dafür nicht erforderlich: Wer einmal die Grundlagen gemeistert hat, wird in der Lage sein Python-Programme zu schreiben, die automatisch alle möglichen praktischen Aufgaben abarbeiten, wie z. B. Dateien nach Texten durchsuchen, PDF-Dateien teilen, zusammenfügen, mit Wasserzeichen versehen und verschlüsseln oder Online-Formulare ausfüllen.

Schritt-für-Schritt-Anleitungen führen durch jedes Programm, und Übungsaufgaben am Ende jedes Kapitels fordern dazu auf, die Programme zu verbessern und die eigenen Fähigkeiten auf ähnliche Problemstellungen zu richten.

Table of contents

  1. Cover
  2. Titel
  3. Impressum
  4. Inhalt
  5. Widmung
  6. Der Autor
  7. Der Fachgutachter
  8. Danksagung
  9. Einleitung
    1. Für wen ist dieses Buch gedacht?
    2. Programmierstil
    3. Was ist Programmierung?
    4. Was ist Python?
    5. Programmierer müssen nicht viel Mathe können
    6. Sie sind nie zu alt, um programmieren zu lernen
    7. Programmierung ist kreativ
    8. Der Aufbau dieses Buchs
    9. Python herunterladen und installieren
    10. Mu herunterladen und installieren
    11. Mu starten
    12. IDLE starten
    13. Die interaktive Shell
    14. Drittanbietermodule installieren
    15. Hilfe finden
    16. Sinnvolle Fragen stellen
    17. Zusammenfassung
  10. Teil 1 Grundlagen der Python-Programmierung
    1. 1 Grundlagen von Python
    2. Ausdrücke in die interaktive Shell eingeben
    3. Die Datentypen für ganze Zahlen, Fließkommazahlen und Strings
    4. Stringverkettung und -wiederholung
    5. Werte in Variablen speichern
    6. Zuweisungsanweisungen
    7. Variablennamen
    8. Ihr erstes Programm
    9. Analyse des Programms
    10. Kommentare
    11. Die Funktion print()
    12. Die Funktion input()
    13. Den Benutzernamen ausgeben
    14. Die Funktion len()
    15. Die Funktionen str(), int() und float()
    16. Zusammenfassung
    17. Wiederholungsfragen
    18. 2 Flusssteuerung
    19. Boolesche Werte
    20. Vergleichsoperatoren
    21. Boolesche Operatoren
    22. Binäre boolesche Operatoren
    23. Der Operator not
    24. Kombinierte Verwendung von booleschen und Vergleichsoperatoren
    25. Elemente zur Flusssteuerung
    26. Bedingungen
    27. Codeblöcke
    28. Programmausführung
    29. Flusssteuerungsanweisungen
    30. If-Anweisungen
    31. Else-Anweisungen
    32. Elif-Anweisungen
    33. While-Schleifen
    34. Break-Anweisungen
    35. Continue-Anweisungen
    36. For-Schleifen und die Funktion range()
    37. Module importieren
    38. From-import-Anweisungen
    39. Programme mit sys.exit() vorzeitig beenden
    40. Ein kurzes Programm: Zahlen raten
    41. Ein kurzes Programm: Stein, Schere, Papier
    42. Zusammenfassung
    43. Wiederholungsfragen
    44. 3 Funktionen
    45. Def-Anweisungen mit Parametern
    46. Terminologie
    47. Rückgabewerte und die Anweisung return
    48. Der Wert None
    49. Schlüsselwortargumente und print()
    50. Der Aufrufstack
    51. Lokaler und globaler Gültigkeitsbereich
    52. Lokale Variablen können im globalen Gültigkeitsbereich nicht verwendet werden
    53. Lokale Gültigkeitsbereiche können keine Variablen aus anderen lokalen Gültigkeitsbereichen verwenden
    54. Globale Variablen können von einem lokalen Gültigkeitsbereich aus gelesen werden
    55. Lokale und globale Variablen mit demselben Namen
    56. Die Anweisung global
    57. Ausnahmebehandlung
    58. Ein kurzes Programm: Zickzackmuster
    59. Zusammenfassung
    60. Wiederholungsfragen
    61. Übungsprojekte
    62. Die Collatz-Folge
    63. Eingabevalidierung
    64. 4 Listen
    65. Der Datentyp für Listen
    66. Einzelne Elemente einer Liste mithilfe des Index abrufen
    67. Negative Indizes
    68. Teillisten mithilfe von Slices abrufen
    69. Die Länge einer Liste mit len() abrufen
    70. Werte in einer Liste mithilfe des Index ändern
    71. Listenverkettung und -wiederholung
    72. Elemente mit del aus einer Liste entfernen
    73. Listen verwenden
    74. Listen in for-Schleifen
    75. Die Operatoren in und not in
    76. Der Trick mit der Mehrfachzuweisung
    77. Die Funktion enumerate() für Listen
    78. Die Funktionen random.choice() und random.shuffle() für Listen
    79. Erweiterte Zuweisungsoperatoren
    80. Methoden
    81. Elemente in einer Liste mit der Methode index() finden
    82. Elemente mit den Methoden append() und insert() zu Listen hinzufügen
    83. Elemente mit remove() aus Listen entfernen
    84. Elemente in einer Liste mit sort() sortieren
    85. Reihenfolge der Listeneinträge mit reverse() umkehren
    86. Beispielprogramm: Magic 8 Ball mithilfe einer Liste
    87. Sequenzielle Datentypen
    88. Veränderbare und unveränderbare Datentypen
    89. Der Datentyp für Tupel
    90. Typen mit den Funktionen list() und tuple() umwandeln
    91. Verweise
    92. Identität und die Funktion id()
    93. Verweise übergeben
    94. Die Funktionen copy() und deepcopy() des Moduls copy
    95. Ein kurzes Programm: Conways Spiel des Lebens
    96. Zusammenfassung
    97. Wiederholungsfragen
    98. Übungsprojekte
    99. Kommacode
    100. Münzwurffolgen
    101. Zeichenbildraster
    102. 5 Dictionaries und Datenstrukturen
    103. Der Datentyp für Dictionaries
    104. Dictionaries und Listen im Vergleich
    105. Die Methoden keys(), values() und items()
    106. Das Vorhandensein eines Schlüssels oder Wertes im Dictionary ermitteln
    107. Die Methode get()
    108. Die Methode setdefault()
    109. Saubere Ausgabe
    110. Datenstrukturen zur Modellierung realer Objekte
    111. Ein Tic-Tac-Toe-Brett
    112. Verschachtelte Dictionaries und Listen
    113. Zusammenfassung
    114. Wiederholungsfragen
    115. Übungsprojekte
    116. Validierer für Schach-Dictionary
    117. Inventar für ein Fantasyspiel
    118. Eine Funktion zum Hinzufügen von Listeninhalten zum Inventar-Dictionary
    119. 6 Stringbearbeitung
    120. Umgang mit Strings
    121. Stringliterale
    122. Strings indizieren und Slices entnehmen
    123. Die Operatoren in und not in für Strings
    124. Strings in andere Strings einfügen
    125. Nützliche Stringmethoden
    126. Die Stringmethoden upper(), lower(), isupper() und islower()
    127. Die isX-Stringmethoden
    128. Die Stringmethoden startswith() und endswith()
    129. Die Methoden join() und split()
    130. Strings mit der Methode partition() aufteilen
    131. Text mit rjust(), ljust() und center() ausrichten
    132. Weißraum mit strip(), rstrip() und lstrip() entfernen
    133. Die Funktionen ord() und chr() für numerische Zeichenwerte
    134. Strings mit dem Modul pyperclip kopieren und einfügen
    135. Projekt: Automatisierte Nachrichten mithilfe einer Mehrfach-Zwischenablage
    136. Schritt 1: Programmdesign und Datenstrukturen
    137. Schritt 2: Befehlszeilenargumente verarbeiten
    138. Schritt 3: Die richtige Antwort kopieren
    139. Projekt: Aufzählungspunkte zu einem Wiki-Markup hinzufügen
    140. Schritt 1: Text von und zur Zwischenablage übertragen
    141. Schritt 2: Textzeilen trennen und Sternchen hinzufügen
    142. Schritt 3: Die veränderten Zeilen zusammenfügen
    143. Ein kurzes Programm: Pig Latin
    144. Zusammenfassung
    145. Wiederholungsfragen
    146. Übungsprojekt
    147. Tabellenausgabe
    148. Bots für Zombie Dice
  11. Teil 2 Aufgaben automatisieren
    1. 7 Mustervergleich mit regulären Ausdrücken
    2. Textmuster ohne reguläre Ausdrücke finden
    3. Textmuster mithilfe regulärer Ausdrücke finden
    4. Regex-Objekte erstellen
    5. Vergleiche mit einem Regex-Objekt
    6. Zusammenfassung: Mustervergleich mit regulären Ausdrücken
    7. Weitere Möglichkeiten für den Mustervergleich mithilfe regulärer Ausdrücke
    8. Gruppierung durch Klammern
    9. Mithilfe der Pipe nach Übereinstimmungen mit mehreren Gruppen suchen
    10. Optionale Übereinstimmung mit dem Fragezeichen
    11. Mit dem Sternchen nach null oder mehr Übereinstimmungen suchen
    12. Mit dem Pluszeichen nach einer oder mehr Übereinstimmungen suchen
    13. Mit geschweiften Klammern nach einer genauen Zahl von Wiederholungen suchen
    14. Gieriger und nicht gieriger Mustervergleich
    15. Die Methode findall()
    16. Zeichenklassen
    17. Eigene Zeichenklassen bilden
    18. Zirkumflex und Dollarzeichen
    19. Das Jokerzeichen
    20. Beliebige Übereinstimmungen mit Punkt-Stern finden
    21. Zeilenumbrüche mit dem Punktsymbol finden
    22. Übersicht über Regex-Symbole
    23. Übereinstimmungen ohne Berücksichtigung der Groß- und Kleinschreibung
    24. Strings mit der Methode sub() ersetzen
    25. Umgang mit komplizierten regulären Ausdrücken
    26. Die Variablen re.IGNORECASE, re.DOTALL und re.VERBOSE kombinieren
    27. Projekt: Extraktionsprogramm für Telefonnummern und E-Mail-Adressen
    28. Schritt 1: Einen regulären Ausdruck für Telefonnummern erstellen
    29. Schritt 2: Einen regulären Ausdruck für E-Mail-Adressen erstellen
    30. Schritt 3: Alle Überstimmungen im Inhalt der Zwischenablage finden
    31. Schritt 4: Die gefundenen Übereinstimmungen zu einem String kombinieren
    32. Das Programm ausführen
    33. Ideen für ähnliche Programme
    34. Zusammenfassung
    35. Wiederholungsfragen
    36. Übungsprojekte
    37. Datumserkennung
    38. Passwortstärke ermitteln
    39. Regex-Version von strip()
    40. 8 Eingabevalidierung
    41. Das Modul PyInputPlus
    42. Die Schlüsselwortargumente min, max, greaterThan und lessThan
    43. Das Schlüsselwortargument blank
    44. Die Schlüsselwortargumente limit, timeout und default
    45. Die Schlüsselwortargumente allowRegexes und blockRegexes
    46. Eine eigene Validierungsfunktion an inputCustom() übergeben
    47. Projekt: Einen Trottel stundenlang beschäftigen
    48. Projekt: Multiplikationstest
    49. Zusammenfassung
    50. Wiederholungsfragen
    51. Übungsprojekte
    52. Sandwichzubereiter
    53. Ein eigenes Programm für den Multiplikationstest
    54. 9 Dateien lesen und schreiben
    55. Dateien und Dateipfade
    56. Backslash unter Windows und Schrägstrich unter macOS und Linux
    57. Pfade mit dem Operator / zusammenfügen
    58. Das aktuelle Arbeitsverzeichnis
    59. Das Benutzerverzeichnis
    60. Absolute und relative Pfade
    61. Neue Ordner mit os.makedirs() erstellen
    62. Absolute und relative Pfade verwenden
    63. Die Komponenten eines Dateipfads abrufen
    64. Dateigrößen und Ordnerinhalte ermitteln
    65. Eine Dateiliste mit Glob-Mustern bearbeiten
    66. Die Gültigkeit von Pfaden prüfen
    67. Dateien lesen und schreiben
    68. Dateien mit der Funktion open() öffnen
    69. Die Inhalte einer Datei lesen
    70. Dateien schreiben
    71. Variablen mit dem Modul shelve speichern
    72. Variablen mit der Funktion pprint.pformat() speichern
    73. Projekt: Zufallsgenerator für Tests
    74. Schritt 1: Die Daten für den Test in einem Dictionary speichern
    75. Schritt 2: Die Fragebogendatei erstellen und die Fragen mischen
    76. Schritt 3: Die Auswahl der möglichen Antworten zusammenstellen
    77. Schritt 4: Den Inhalt der Dateien für die Frage- und Lösungsbogen schreiben
    78. Projekt: Aktualisierbare Mehrfach-Zwischenablage
    79. Schritt 1: Kommentare und Vorbereitungen für die Shelf-Daten
    80. Schritt 2: Den Inhalt der Zwischenablage unter einem Schlüsselwort speichern
    81. Schritt 3: Schlüsselwörter auflisten und Inhalte laden
    82. Zusammenfassung
    83. Wiederholungsfragen
    84. Übungsprojekte
    85. Erweiterte Mehrfach-Zwischenablage
    86. Lückentextspiel
    87. Regex-Suche
    88. 10 Dateien verwalten
    89. Das Modul shutil
    90. Dateien und Ordner kopieren
    91. Dateien und Ordner verschieben und umbenennen
    92. Dateien und Ordner unwiederbringlich löschen
    93. Sicheres Löschen mit dem Modul send2trash
    94. Einen Verzeichnisbaum durchlaufen
    95. Dateien mit dem Modul zipfile komprimieren
    96. ZIP-Dateien lesen
    97. ZIP-Dateien entpacken
    98. ZIP-Dateien erstellen und Inhalte hinzufügen
    99. Projekt: Amerikanische Datumsangaben in Dateinamen in europäische Datumsangaben ändern
    100. Projekt: Amerikanische Datumsangaben in Dateinamen in …
    101. Schritt 1: Einen regulären Ausdruck für amerikanische Datumsangaben definieren
    102. Schritt 2: Die einzelnen Teile der Datumsangabe in den Dateinamen ermitteln
    103. Schritt 3: Die neuen Dateinamen zusammenstellen und die Dateien umbenennen
    104. Vorschläge für ähnliche Programme
    105. Projekt: Einen Ordner in einer ZIP-Datei sichern
    106. Schritt 1: Den Namen der ZIP-Datei bestimmen
    107. Schritt 2: Die neue ZIP-Datei erstellen
    108. Schritt 3: Den Verzeichnisbaum durchlaufen und Inhalte zur ZIP-Datei hinzufügen
    109. Vorschläge für ähnliche Programme
    110. Zusammenfassung
    111. Wiederholungsfragen
    112. Übungsprojekte
    113. Selektives Kopieren
    114. Nicht mehr benötigte Dateien löschen
    115. Lücken entfernen
    116. 11 Debugging
    117. Ausnahmen auslösen
    118. Traceback als String abrufen
    119. Zusicherungen (Assertions)
    120. Zusicherungen in einem Ampelsimulator
    121. Protokollierung
    122. Das Modul logging verwenden
    123. Kein Debugging mit print()
    124. Protokolliergrade
    125. Die Protokollierung deaktivieren
    126. Protokollierung in eine Datei
    127. Der Debugger von Mu
    128. Continue
    129. Step In
    130. Step Over
    131. Step Out
    132. Stop
    133. Debugging eines Additionsprogramms
    134. Haltepunkte
    135. Zusammenfassung
    136. Wiederholungsfragen
    137. Übungsprojekt
    138. Münzwurfprogramm
    139. 12 Web Scraping
    140. Projekt: mapIt.py mit dem Modul webbrowser
    141. Schritt 1: Die URL herausfinden
    142. Schritt 2: Befehlszeilenargumente verarbeiten
    143. Schritt 3: Den Inhalt der Zwischenablage verarbeiten und den Browser starten
    144. Vorschläge für ähnliche Programme
    145. Dateien mithilfe des Moduls requests aus dem Web herunterladen
    146. Eine Webseite mit der Funktion requests.get() herunterladen
    147. Auf Fehler prüfen
    148. Heruntergeladene Dateien auf der Festplatte speichern
    149. HTML
    150. Quellen zu HTML
    151. Ein kleiner Auffrischungskurs
    152. Den HTML-Quellcode einer Webseite einsehen
    153. Die Entwicklertools des Browsers öffnen
    154. HTML-Elemente mithilfe der Entwicklertools finden
    155. HTML mit dem Modul bs4 durchsuchen
    156. Ein BeautifulSoup-Objekt aus dem HTML-Text erstellen
    157. Elemente mit der Methode select() finden
    158. Daten aus den Attributen eines Elements abrufen
    159. Projekt: Alle Suchergebnisse öffnen
    160. Schritt 1: Die Befehlszeilenargumente abrufen und die Suchergebnisseite anfordern
    161. Schritt 2: Alle Ergebnisse finden
    162. Schritt 3: Browsertabs für jedes Suchergebnis öffnen
    163. Vorschläge für ähnliche Programme
    164. Projekt: Alle XKCD-Comics herunterladen
    165. Schritt 1: Den Aufbau des Programms festlegen
    166. Schritt 2: Die Webseite herunterladen
    167. Schritt 3: Das Bild des Comics finden und herunterladen
    168. Schritt 4: Das Bild speichern und den vorherigen Comic suchen
    169. Vorschläge für ähnliche Programme
    170. Den Browser mit dem Modul selenium steuern
    171. Einen seleniumgesteuerten Browser starten
    172. Elemente auf der Seite finden
    173. Auf Elemente klicken
    174. Formulare ausfüllen und absenden
    175. Die Betätigung von Sondertasten simulieren
    176. Auf Browserschaltflächen klicken
    177. Weitere Informationen über Selenium
    178. Zusammenfassung
    179. Wiederholungsfragen
    180. Übungsprojekte
    181. E-Mail-Programm für die Befehlszeile
    182. Downloadprogramm für Fotowebsites
    183. 2048
    184. Linküberprüfung
    185. 13 Excel-Arbeitsblätter
    186. Excel-Dokumente
    187. Das Modul openpyxl installieren
    188. Excel-Dokumente lesen
    189. Excel-Dokumente mit OpenPyXL öffnen
    190. Arbeitsblätter aus der Arbeitsmappe abrufen
    191. Zellen eines Arbeitsblatts abrufen
    192. Umrechnen zwischen Kennbuchstaben und Nummern
    193. Zeilen und Spalten eines Arbeitsblatts abrufen
    194. Arbeitsmappen, Arbeitsblätter und Zellen
    195. Projekt: Daten in einer Arbeitsmappe lesen
    196. Schritt 1: Die Daten der Arbeitsmappe lesen
    197. Schritt 2: Die Datenstruktur füllen
    198. Schritt 3: Die Ergebnisse in eine Datei schreiben
    199. Vorschläge für ähnliche Programme
    200. Excel-Dokumente schreiben
    201. Excel-Dokumente erstellen und speichern
    202. Arbeitsblätter erstellen und entfernen
    203. Werte in Zellen schreiben
    204. Projekt: Ein Arbeitsblatt aktualisieren
    205. Schritt 1: Eine Datenstruktur mit den neuen Informationen einrichten
    206. Schritt 2: Alle Zeilen prüfen und die falschen Preise korrigieren
    207. Vorschläge für ähnliche Programme
    208. Die Schrift in den Zellen gestalten
    209. Font-Objekte
    210. Formeln
    211. Das Erscheinungsbild von Zeilen und Spalten festlegen
    212. Zeilenhöhe und Spaltenbreite festlegen
    213. Zellen verbinden und aufteilen
    214. Bereiche fixieren
    215. Diagramme
    216. Zusammenfassung
    217. Wiederholungsfragen
    218. Übungsprojekte
    219. Multiplikationstabellen erstellen
    220. Leere Zeilen einfügen
    221. Zellen transponieren
    222. Textdateien in Arbeitsblätter umwandeln
    223. Arbeitsblätter in Textdateien umwandeln
    224. 14 Google Tabellen
    225. EZSheets installieren und einrichten
    226. Anmeldeinformationen und Tokendateien beziehen
    227. Die Datei mit den Anmeldeinformationen widerrufen
    228. Spreadsheet-Objekte
    229. Tabellen erstellen, hochladen und auflisten
    230. Tabellenattribute
    231. Tabellen hoch- und herunterladen
    232. Tabellen löschen
    233. Sheet-Objekte
    234. Daten lesen und schreiben
    235. Tabellenblätter erstellen und löschen
    236. Tabellenblätter kopieren
    237. Grenzwerte für Google Tabellen
    238. Zusammenfassung
    239. Wiederholungsfragen
    240. Übungsprojekte
    241. Daten von Google Formulare herunterladen
    242. Tabellen in andere Formate umwandeln
    243. Fehler in einer Tabelle finden
    244. 15 PDF- und Word-Dokumente
    245. PDF-Dokumente
    246. Text aus PDFs entnehmen
    247. PDFs entschlüsseln
    248. PDFs erstellen
    249. Projekt: Ausgewählte Seiten aus mehreren PDFs kombinieren
    250. Schritt 1: Alle PDF-Dateien finden
    251. Schritt 2: Die einzelnen PDFs öffnen
    252. Schritt 3: Die einzelnen Seiten hinzufügen
    253. Schritt 4: Die Ergebnisse speichern
    254. Vorschläge für ähnliche Programme
    255. Word-Dokumente
    256. Word-Dokumente lesen
    257. Den kompletten Text einer .docx-Datei abrufen
    258. Absätze und Run-Objekte formatieren
    259. Word-Dokumente mit anderen als den Standardformaten erstellen
    260. Run-Attribute
    261. Word-Dokumente schreiben
    262. Überschriften hinzufügen
    263. Zeilenwechsel und Seitenumbrüche hinzufügen
    264. Bilder einfügen
    265. PDF-Dateien aus Word-Dokumenten erstellen
    266. Zusammenfassung
    267. Wiederholungsfragen
    268. Übungsprojekte
    269. PDF-Paranoia
    270. Personalisierte Einladungen als Word-Dokument
    271. Brute-Force-Passwortknacker für PDFs
    272. 16 CSV-Dateien und JSON-Daten
    273. Das Modul csv
    274. Reader-Objekte
    275. Daten in einer for-Schleife aus reader-Objekten lesen
    276. Writer-Objekte
    277. Die Schlüsselwortargumente delimiter und lineterminator
    278. DictReader- und DictWriter-Objekte
    279. Projekt: Kopfzeilen aus CSV-Dateien entfernen
    280. Schritt 1: Alle CSV-Dateien durchlaufen
    281. Schritt 2: Die CSV-Datei lesen
    282. Schritt 3: Die CSV-Datei ohne die erste Zeile schreiben
    283. Vorschläge für ähnliche Programme
    284. JSON und APIs
    285. Das Modul json
    286. JSON-Daten mit der Funktion loads() laden
    287. JSON-Daten mit der Funktion dumps() schreiben
    288. Projekt: Die aktuellen Wetterdaten abrufen
    289. Schritt 1: Den Standort aus dem Befehlszeilenargument entnehmen
    290. Schritt 2: Die JSON-Daten herunterladen
    291. Schritt 3: JSON-Daten laden und die Wettervorhersage ausgeben
    292. Vorschläge für ähnliche Programme
    293. Zusammenfassung
    294. Wiederholungsfragen
    295. Übungsprojekt
    296. Excel-in-CSV-Konverter
    297. 17 Zeit und Aufgabenplanung
    298. Das Modul time
    299. Die Funktion time.time()
    300. Die Funktion time.sleep()
    301. Zahlen runden
    302. Projekt: Superstoppuhr
    303. Schritt 1: Das Programm auf die Zeitmessung vorbereiten
    304. Schritt 2: Intervalldauern messen und anzeigen
    305. Vorschläge für ähnliche Programme
    306. Das Modul datetime
    307. Der Datentyp timedelta
    308. Anhalten bis zu einem bestimmten Zeitpunkt
    309. datetime-Objekte in Strings umwandeln
    310. Strings in datetime-Objekte umwandeln
    311. Die Zeitfunktionen von Python im Überblick
    312. Multithreading
    313. Argumente an die Zielfunktion eines Threads übergeben
    314. Probleme der Nebenläufigkeit
    315. Projekt: Multithread-Version des XKCD-Downloadprogramms
    316. Schritt 1: Eine Funktion für den Download verwenden
    317. Schritt 2: Threads erstellen und starten
    318. Schritt 3: Auf das Ende aller Threads warten
    319. Andere Programme von Python aus starten
    320. Befehlszeilenargumente an Popen() übergeben
    321. Taskplaner, launchd und cron
    322. Websites mit Python aufrufen
    323. Andere Python-Skripte ausführen
    324. Dateien in ihren Standardanwendungen öffnen
    325. Projekt: Ein einfaches Countdown-Programm
    326. Schritt 1: Der Countdown
    327. Schritt 2: Die Klangdatei abspielen
    328. Vorschläge für ähnliche Programme
    329. Zusammenfassung
    330. Wiederholungsfragen
    331. Übungsprojekte
    332. Elegantere Stoppuhr
    333. Webcomic-Downloadprogramm mit Zeitplanung
    334. 18 E-Mails und Textnachrichten
    335. E-Mails mit der Gmail-API senden und empfangen
    336. Die Gmail-API aktivieren
    337. E-Mails von einem Gmail-Konto senden
    338. E-Mails in einem Gmail-Konto lesen
    339. E-Mails in einem Gmail-Konto suchen
    340. Anhänge von einem Gmail-Konto herunterladen
    341. SMTP
    342. E-Mails senden
    343. Verbindung mit einem SMTP-Server aufnehmen
    344. Die »Hallo«-Nachricht an den SMTP-Server senden
    345. Die TLS-Verschlüsselung einleiten
    346. Am SMTP-Server anmelden
    347. Eine E-Mail senden
    348. Die Verbindung zum SMTP-Server trennen
    349. IMAP
    350. E-Mails mit IMAP abrufen und löschen
    351. Verbindung mit einem IMAP-Server aufnehmen
    352. Am IMAP-Server anmelden
    353. Nach E-Mails suchen
    354. E-Mails abrufen und als gelesen markieren
    355. E-Mail-Adressen aus einer Rohnachricht gewinnen
    356. Den Rumpf aus einer Rohnachricht gewinnen
    357. E-Mails löschen
    358. Die Verbindung zum IMAP-Server trennen
    359. Projekt: E-Mails über ausstehende Mitgliedsbeiträge senden
    360. Schritt 1: Die Excel-Datei öffnen
    361. Schritt 2: Alle säumigen Mitglieder finden
    362. Schritt 3: Personalisierte E-Mail-Mahnungen senden
    363. Textnachrichten über SMS-E-Mail-Gateways senden
    364. Textnachrichten mit Twilio senden
    365. Ein Twilio-Konto einrichten
    366. Textnachrichten senden
    367. Projekt: Das Modul »Just Text Me«
    368. Zusammenfassung
    369. Wiederholungsfragen
    370. Übungsprojekte
    371. Zufällige Zuweisung von Arbeiten
    372. Regenschirmhinweis
    373. Automatischer Entregistrierer
    374. Den Computer per E-Mail steuern
    375. 19 Bildbearbeitung
    376. Grundlagen zur Bilddarstellung auf Computern
    377. Farben und RGBA-Werte
    378. Koordinaten und Rechtecktupel
    379. Bildbearbeitung mit Pillow
    380. Mit dem Datentyp Image arbeiten
    381. Bilder beschneiden
    382. Bilder kopieren und in andere Bilder einfügen
    383. Die Bildgröße ändern
    384. Bilder drehen und spiegeln
    385. Einzelne Pixel ändern
    386. Projekt: Ein Logo hinzufügen
    387. Schritt 1: Das Logobild öffnen
    388. Schritt 2: Alle Dateien durchlaufen und die Bilder öffnen
    389. Schritt 3: Die Bildgröße ändern
    390. Schritt 4: Logo hinzufügen und Änderungen speichern
    391. Vorschläge für ähnliche Programme
    392. Bilder zeichnen
    393. Formen zeichnen
    394. Text zeichnen
    395. Zusammenfassung
    396. Wiederholungsfragen
    397. Übungsprojekte
    398. Das Logoprogramm erweitern und verbessern
    399. Fotoordner auf der Festplatte finden
    400. Personalisierte Tischkarten
    401. 20 GUI-Automatisierung
    402. Das Modul PyAutoGUI installieren
    403. Zugriff auf macOS erlauben
    404. Kleine Probleme beheben
    405. Die PyAutoGUI-Notfallsicherung
    406. Beenden durch Abmelden
    407. Den Mauszeiger steuern
    408. Den Mauszeiger bewegen
    409. Die Position des Mauszeigers abrufen
    410. Mausinteraktionen
    411. Klicken
    412. Ziehen
    413. Scrollen
    414. Mausbewegungen planen
    415. Auf dem Bildschirm arbeiten
    416. Einen Screenshot aufnehmen
    417. Einen Screenshot analysieren
    418. Bilderkennung
    419. Informationen über das Fenster abrufen
    420. Das aktive Fenster abrufen
    421. Andere Möglichkeiten zum Abrufen von Fenstern
    422. Fenster bearbeiten
    423. Die Tastatur steuern
    424. Strings von der Tastatur senden
    425. Tastennamen
    426. Tasten drücken und loslassen
    427. Tastenkombinationen
    428. GUI-Automatisierungsskripte einrichten
    429. Übersicht über die Funktionen von PyAutoGUI
    430. Projekt: Formulare automatisch ausfüllen
    431. Schritt 1: Den Ablauf herausfinden
    432. Schritt 2: Die Koordinaten ermitteln
    433. Schritt 3: Daten eingeben
    434. Schritt 4: Auswahllisten und Optionsschalter
    435. Schritt 5: Das Formular absenden und warten
    436. Dialogfelder anzeigen
    437. Zusammenfassung
    438. Wiederholungsfragen
    439. Übungsprojekte
    440. Beschäftigung vortäuschen
    441. Textfelder über Zwischenablage lesen
    442. Instant-Messenger-Bot
    443. Tutorial für einen Spiele-Bot
  12. Anhang
    1. A Drittanbietermodule installieren
    2. Pip
    3. Drittanbietermodule installieren
    4. Module für Mu installieren
    5. B Programme ausführen
    6. Programme im Terminalfenster ausführen
    7. Python-Programme unter Windows ausführen
    8. Python-Programme unter macOS ausführen
    9. Programme unter Ubuntu Linux ausführen
    10. Python-Programme mit ausgeschalteten Zusicherungen ausführen
    11. C Antworten auf die Wiederholungsfragen
    12. Kapitel 1
    13. Kapitel 2
    14. Kapitel 3
    15. Kapitel 4
    16. Kapitel 5
    17. Kapitel 6
    18. Kapitel 7
    19. Kapitel 8
    20. Kapitel 9
    21. Kapitel 10
    22. Kapitel 11
    23. Kapitel 12
    24. Kapitel 13
    25. Kapitel 14
    26. Kapitel 15
    27. Kapitel 16
    28. Kapitel 17
    29. Kapitel 18
    30. Kapitel 19
    31. Kapitel 20
  13. Fußnoten
  14. Stichwortverzeichnis

Product information

  • Title: Routineaufgaben mit Python automatisieren, 2nd Edition
  • Author(s): Al Sweigart
  • Release date: April 2020
  • Publisher(s): dpunkt
  • ISBN: 9783864907531