Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> Perl Προγραμματισμός

Πώς να χρησιμοποιήσετε Perl να αναζητήσετε ένα PDF Doc

Perl scripts " σέρνεται" σε όλο τον ιστό , κοσκίνισμα μέσα από τον ωκεανό των σελίδων HTML για πληροφορίες , και αναπόφευκτα αντιμετωπίζουν κάποια από τα εκατομμύρια των αρχείων Adobe Acrobat PDF σκορπιστεί σε ολόκληρο το Διαδίκτυο . Αν και είναι έτοιμοι να εκτυπώσετε και ελκυστική από την άποψη της ανίχνευσης ιστού , PDFs είναι ελαφρώς πιο δύσκολο καρύδι για να ραγίσει από την απλή , που βασίζονται σε κείμενο HTML σελίδες . Ευτυχώς , όπως και με πολλά καθήκοντα διαδίκτυο, υπάρχει μια ενότητα Perl που μπορούν να βοηθήσουν να κάνουν τη ζωή ευκολότερη : CAM :: PDF . Αυτή η διεπαφή προγραμματισμού , αν και ως επί το πλείστον προορίζονται να δημιουργήσουν και να χειριστούν αρχεία PDF , έχει κάποια βοηθητικά προγράμματα που επιτρέπει σε scripts για να αναζητήσετε το περιεχόμενό τους . Τα πράγματα που θα χρειαστείτε
Perl scripting περιβάλλον
CAM :: ενότητα PDF Perl
κειμένου ή πρόγραμμα επεξεργασίας κώδικα
αρχείο PDF

Παρουσίαση Περισσότερες οδηγίες
Η 1

Εγκατάσταση CAM :: PDF . Το βοηθητικό πρόγραμμα CPAN παρέχει ο ευκολότερος τρόπος να γίνει αυτό - να αρχίσει CPAN στη γραμμή εντολών και στη γραμμή εντολών , πληκτρολογήστε " εγκατάσταση CAM :: PDF " ( χωρίς εισαγωγικά ) 2

Ανοίξτε έναν συντάκτη και . ξεκινήσει το σενάριο , δίνοντας τις ακόλουθες γραμμές για να ξεκινήσει η διερμηνέα Perl και ταυτόχρονα εισάγουν το αναγκαίο ενότητα :

# /usr /bin /perluse CAM :: PDF ?

Προσθέστε τις επόμενες δύο γραμμές για να επεξεργάζονται τα επιχειρήματα της γραμμής εντολών που ο χρήστης θα περάσει στην :

μου $ file = στροφή ? $ μου search = στροφή ?

το πρώτο επιχείρημα που περάσαν στο σενάριο θα είναι το όνομα ενός PDF αρχείων , και το δεύτερο , το string αναζήτησης εικόνων
3

Δημιουργήστε ένα νέο αντικείμενο CAM :: PDF προσθέτοντας την ακόλουθη γραμμή στο σενάριο: .

$ μου doc = CAM :: PDF - > νέο ( $ file ) ?

Χρησιμοποιώντας NumPages μέθοδο του εισαγόμενου ενότητα για να καθορίσει το ανώτατο όριο , δημιουργούν ένα βρόχο για την επεξεργασία κάθε σελίδα του εγγράφου :

foreach μου $ p ( ( 1 .. $ doc - > NumPages ( ) ) ) {
Η 4

Εντός του βρόχου , πρόσθεσε αυτή τη γραμμή για να πάρει κάθε σελίδα του κειμένου από το αρχείο PDF :

μου $ str = $ doc - > getPageText ( $ p) ?

Προσθέστε την επόμενη δήλωση script για να χωρίσει το κείμενο της σελίδας επάνω σε μια σειρά από ξεχωριστές γραμμές :

@ γραμμές = διαίρεσης ( /\\ n /, $ str ) ?

Τελειώστε τη δήλωση βρόχο εισάγοντας μια αγκύλη :

}
5

Τέλος , προσθέστε ένα άλλο βρόχο για το σενάριο για την επεξεργασία κάθε γραμμή της σελίδας και να επιδιώξει έναν αγώνα για το χρήστη συμβολοσειρά αναζήτησης ως κανονική έκφραση . Εάν η κανονική έκφραση επιστρέφει έναν αγώνα , αυτό το παράδειγμα τυπώνει τη γραμμή και τον αριθμό σελίδας στο stdout . Στη θέση αυτών των καταστάσεων εκτύπωσης , θα πρέπει να εφαρμόσουν κώδικα για την επεξεργασία των αποτελεσμάτων , όπως απαιτείται

$ μου i = 0 ? . Foreach $ γραμμή ( @ γραμμές) { + + $ i ? Εάν ( $ γραμμή = ~ /$ αναζήτησης /) {print " \\ " $ αναζήτηση \\ " βρέθηκαν στην γραμμή $ i της σελίδας $ p \\ n" ? print " $ γραμμής \\ n \\ n" } }

Η

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα