Sprechen wir über PDS, wie verarbeiten wir sie?
Ich meine, wir haben in unserem vorherigen Abschnitt mit Python gelernt, mit Dateien zu arbeiten, und Sie können sich vorstellen,
dass wir mit allen Dateien arbeiten können, die wir über die Bildverarbeitung gelernt haben,
aber wir haben auch gelernt, dass wir einfach jede Textdatei manipulieren können , jede PDF-Datei, jede CSV- oder Excel-Datei.
Dies sind alles nur Dateitypen, die wir in Python verarbeiten und bearbeiten können.
In diesem Abschnitt werden wir über PDF sprechen und wie dies funktionieren könnte, und dieses Wissen über PDF wird
in verschiedene Dateiformate übertragen.
Jetzt werden wir später im Kurs über XML-Dateien und CSV-Dateien sprechen, wenn wir uns mit maschinellem Lernen
befassen.
Aber lassen Sie uns zunächst mit PDF arbeiten und sehen, wie wir Python verwenden können, um unser Leben einfacher zu machen.
Jetzt werde ich auf einige PDF-Dateien verlinken, die wir hier haben und die wir in diesem Abschnitt verwenden werden.
Wir haben eine einfache Dummy-PDF-Datei.
Wir haben eine weitere PDF-Datei, die eigentlich zwei Seiten hat.
Und dann haben wir ein Wasserzeichen-PDF, das wir für unser letztes Projekt im Abschnitt speichern werden.
Aber lass uns hierher zurückkehren.
Was ist Ihrer Meinung nach unser erster Schritt nach dem, was wir bisher gelernt haben?
Nun, unser erster Schritt besteht darin, eine Bibliothek zu finden, die wir mit Python verwenden können, um PDF-Dateien zu verarbeiten.
Und bereiten Sie sich auf diesen Abschnitt vor.
Ich habe eine wirklich beeindruckende Website, wahrscheinlich die beste Website, die Sie je gesehen haben, wahrscheinlich die sauberste und modernste
Website, wenn es um das Paket geht, das wir installieren.
Wir installieren etwas namens PIP Three Install.
P und pdf.
Bis jetzt gibt es viele Pakete, die wir installieren können, wenn es um PDS geht. Dies ist das, was ich
für den Kurs empfehle.
Nun, während dies in meinem Fall installiert wird, ist es bereits installiert. Lassen Sie mich Ihnen zeigen, wie
die Website-Dokumentation aussieht.
Bereit machen.
Es ist hübsch.
Hier ist es.
Puh, richtig.
Ich weiß nicht warum, aber aus irgendeinem Grund sind Python-Dokumentations-Websites nicht die schönsten.
Ich meine, das ist alles subjektiv, oder?
Manche Leute mögen das, aber es macht Sie einfach nicht begeistert, mit PDF zu arbeiten.
Diese Website tut es trotzdem.
Sie können hier sehen, dass es eigentlich keine so große Bibliothek ist.
Und Sie können auf die Dokumentation klicken und noch einmal alles durchlesen, aber lernen wir einfach die
Grundlagen.
Als erstes werde ich also auch Peahi PDF importieren.
Und was wir tun werden, ist mit dem ersten zu arbeiten, dem verblendeten PDF, das nur diese PDF-Datei ist.
Das ist eine einzelne Seite, auf der eine Dummy-PDF-Datei steht.
Nichts Aufregendes.
Wie können wir diese Datei nun öffnen?
Wir kennen das aus früheren Lektionen, oder?
Wir können das mit dem Befehl open verwenden und sagen Dummy-Punkt-PDF.
Und ich kann es so sagen, weil wir uns im selben Ordner befinden.
Ich habe eine PDF-Datei, die ich erstellt habe, also sage ich nur, hey, nimm das Dummy-PDF aus demselben Verzeichnis.
Und hier, lassen Sie uns für jetzt nur lesen, weil ich die Datei lesen und dann nur
als Datei sagen und vorerst Datei drucken möchte, um zu sehen, was wir erhalten. Ich werde diese Datei ausführen, indem ich Python drei PDF-Datei sage.
Mal sehen was passiert.
Alles klar, ich bekomme einen Textrapper namens Dommy PDF.
Alles klar, es sieht so aus, als ob es funktioniert.
Lassen Sie uns dies nur ein wenig genauer untersuchen, um zu sehen, dass es tatsächlich funktioniert.
Was wir tun können, ist, diese PDF-Datei tatsächlich zu verwenden, um die Datei zu lesen.
Lassen Sie uns dies tun, wir können sagen, dass Reider gleich PI pdf ist und die Methode PDF verwenden.
Dateileser.
Auch hier können wir diese Python-Datei lesen.
Also geben wir es einfach hier ein.
Und dann drucken wir einfach Reader und können um einige Seiten bitten.
Auch dies kommt mit der Bibliothek, also lassen Sie uns dies ausführen und sehen, was passiert.
In Ordnung, wir kommen dort weiter, es heißt PDF-Lesewarnung PDF-Datei-Reader-Stream-Dateiobjekt befindet sich nicht
im Binärmodus.
Was bedeutet das?
Denken Sie daran, binär sind Einsen und Nullen, oder?
Wenn ich auf Dummies klicke.
PDF verdummt.
Dies ist nicht das PDF, von dem wir dachten, dass es so aussehen sollte, aber Sie sehen, dass es je nach Programm,
das Sie ausführen, die PDF-Datei möglicherweise nicht lesen kann.
Was wir also tun müssen, und das ist nur ein Standard, an den Sie sich erinnern müssen, ist, dass wir
die Binärdatei lesen möchten.
Es wird also gelesen und dann binär.
Hier wird also ein Dateistream-Objekt erstellt.
Es wird also das Dateiobjekt in den Binärmodus konvertieren.
Damit die Grube PDF zum Datei-Reader.
Kann dieses Binärdateiobjekt lesen.
Wenn ich das jetzt noch einmal ausführe, sehen Sie sich das an, es kann es lesen und sagt mir, dass es
eine Seite hat, wenn ich zweiseitiges PDF mache und das ausführe.
Wir bekommen zwei Seiten, super.
Lass uns das klären.
Und gehen Sie zurück zu unserem PDF.
Es tut mir leid, diesen PDF-Dummy zu benennen, ich sollte nicht gemein zu diesem PDF sein.
Ich werde das nächste Mal an meinen Namenskonventionen arbeiten.
So wie wir es bei der Bildbearbeitung mit Bill PDF gesehen haben, können wir viele Dinge tun, um dieses Bild zu
bearbeiten.
Zum Beispiel kann ich lückenhafter werden, und wenn ich eine Seite bekomme, sagen wir die erste Seite und ich führe diese aus.
Wir bekommen das Seitenobjekt hier drüben.
Nun, es sieht hier wie Kauderwelsch aus, weil dies ein spezielles Objekt ist, das PDF erstellt, aber wenn ich etwas wie
Seite eins mache, ist dies in diesem Fall die Seite zwei.
Ich bekomme eine Nachricht von einem Indexer, der sagt, dass der Listenindex außerhalb des zulässigen Bereichs liegt, weil das Dummy-PDF nur eine Seite hat.
Wir können auch verschiedene Dinge tun, wie zum Beispiel dieses Bild drehen und wir werden einhundertachtzig
Grad gedreht.
Wenn ich das laufe.
Dies funktioniert nicht.
Nun, warum ist das so?
Dies liegt daran, dass auch PIDF das Reader-Objekt verwendet, aber es muss wissen, was es drehen soll.
In unserem Fall müssen wir die Seite des Lesers tatsächlich dazu bringen, sie zu drehen.
Wir müssen also etwas tun wie Leserpunkt, Seite abrufen, die erste Seite unseres PDFs abrufen.
Und weisen Sie dies der Seitenvariablen zu, sodass wir uns jetzt, da wir das Seitenobjekt haben, an ein Seitenobjekt und
ein Leserobjekt erinnern.
Führen Sie diese Hilfe abschließend aus. Ich erhalte, dass das Seitenobjekt kein Attribut rotieren hat, und ich habe Sie möglicherweise ein wenig ausgetrickst, um hier einen
Punkt zu beweisen.
Nun, dieses rotierende Objekt klingt nach etwas, das es haben sollte, aber es ist eigentlich nicht der richtige Name, den
wir wollen.
Wie können wir das also lösen?
Und das kommt darauf zurück, dass wir die Dokumentation lesen.
Wenn ich zurück zum Dateileser gehe und lasse uns suchen, rotieren oder hierher zurückgehen, sehen wir, dass wir die
Seitenobjektklasse haben, die wir richtig haben.
Wir haben das Seitenobjekt.
Wenn ich hier klicke, finden wir Rotieren.
Und wir haben ein paar Dinge, die wir zusammengeführt haben, die Rotationsseite, wir machen weiter, machen weiter, machen weiter.
Und gut, wir müssen im Uhrzeigersinn drehen, gegen den Uhrzeigersinn drehen und den Winkel.
Es sieht also so aus, als ob wir das brauchen.
Wir haben nicht wirklich eine Rotationsmethode.
Aber Sie sehen hier, so finden wir heraus, was die Bibliothek tut.
Wir haben auch Maßstab für Maßstab, wenn wir wollten.
Also lass uns einfach kopieren, im Uhrzeigersinn drehen oder gegen den Uhrzeigersinn drehen.
Und wir machen einfach 90.
Wenn ich dies speichere und ausführe, erhalten wir hier ein Objekt zurück, aber dieses Objekt befindet sich tatsächlich im Speicher.
Wenn ich zurück zu meinem Dummy gehe, hat sich nichts geändert, weil wir nicht wirklich etwas gespeichert haben.
Das ist alles im Speicher meines Computers.
Wenn dieses Programm aufhört zu laufen, wird es in den Papierkorb geworfen.
Lassen Sie uns also unser dummy-PDF aktualisieren, um tatsächlich zu schreiben und gegen den Uhrzeigersinn zu drehen.
Wie können wir das machen?
Nun, mit einem anderen mit Tastatur.
Also innerhalb von Open sagen wir Open und nennen das, sagen wir, krumm.
Ich weiß nicht, ob Sie Cricket so buchstabieren, also gehen wir mit Tilt Dot PDF.
Und wir werden diese Datei öffnen und in diese Datei im Binärformat schreiben.
Und wir werden als Datei sagen.
Und hier werden wir die Datei schreiben.
Zu dieser neuen Datei, aber wie können wir dies tun?
Diese Bibliothek gibt uns ein sogenanntes Writer-Objekt, damit wir eine Writer-Variable erstellen können, und
diese Writer-Variable verwendet die API pdf dot pdf anstelle eines Dateilesers.
Wir haben eine Datei.
Schriftsteller.
Und das erlaubt uns, das Objekt im Gedächtnis zu korrigieren, so dass ich jetzt Schreiber sagen kann.
Punkt, nicht wahr?
Und nur um die Namenskonvention angemessen zu machen, sagen wir, dies wird der neue FA sein, also
sagen wir neue Datei, also sehen wir, ob das funktioniert.
Und lassen Sie uns das ausführen.
Alles klar, wir haben das PDF gekippt.
Aber wir haben tatsächlich eine Sache vergessen, weil wir gerade ein Writer-Objekt geöffnet haben, aber wir schreiben
kein PDF hinein.
Im Idealfall erhalten wir die gedrehte Seite und direkt darin.
Rechts.
Also, was wir tun können.
Entfernen Sie den Druck hier.
Wir haben die Seite gedreht.
Und mit dem Writer-Objekt, das wir jetzt haben, können wir Writer-Punkt-Anzeigenseite sagen und ihm die Seite geben, die wir gedreht
haben.
Also, wenn ich das jetzt noch einmal durchführe.
Und gehen Sie zu kippen.
Nun, auch hier sehen wir Jibberish.
Aber wenn wir das öffnen.
Schauen Sie sich das an, unser PDF wird einfach so gedreht.
Sehr sehr cool.
Das ist großartig, aber irgendwie nutzlos, oder?
Wer dreht PDF wirklich?
Das ist also wirklich schwer zu lesen, aber zumindest zeigt dies, dass wir in der Lage sind, Geschwindigkeiten zu verarbeiten.
Lassen Sie uns im nächsten Video an etwas Spannenderem arbeiten. Ich möchte, dass wir etwas
Nützlicheres tun.
Also lass uns eine Pause machen und wir sehen uns im nächsten.