/ / / Κατασκευάστε έναν Χρονοδιάγραμμα λήψεων με μικρή ικανότητα προγραμματισμού

Δημιουργήστε έναν Χρονοδιακόπτη λήψης με μικρή ικανότητα προγραμματισμού

Όλοι αγαπάμε να κατεβάζουμε υλικό από το διαδίκτυο,και υπάρχουν σωροί μεγάλων εργαλείων διαχείρισης λήψεων που μπορούμε να χρησιμοποιήσουμε για να προγραμματίσουμε τις λήψεις μας. Ίσως να είναι πιο εύκολο να χρησιμοποιήσετε έναν διαχειριστή λήψεων, αλλά δεν υπάρχει καμία ζημιά στην εξερεύνηση των εργαλείων που ήδη έρχονται με το Ubuntu και την πλήρη αξιοποίησή του.

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

Λήψη με χρήση του Wget

Το Wget είναι ένα πακέτο δωρεάν λογισμικού για ανάκτησηαρχεία που χρησιμοποιούν HTTP, HTTPS και FTP, τα πιο διαδεδομένα πρωτόκολλα Internet. Είναι ένα μη διαδραστικό εργαλείο γραμμής εντολών, οπότε μπορεί εύκολα να καλείται από δέσμες ενεργειών, εργασίες cron, τερματικά χωρίς υποστήριξη X-Windows κ.λπ.

Ανοίξτε το τερματικό σας και εξερευνήστε πώς μπορούμε να χρησιμοποιήσουμε το wget για να κατεβάσετε υλικό από το δίκτυο. Η βασική σύνταξη λήψης με το wget είναι η εξής:

wget [επιλογή] ... [URL] ...

Αυτή η εντολή θα κατεβάσει το εγχειρίδιο wget στην τοπική σας μονάδα δίσκου

wget http://www.gnu.org/software/wget/manual/wget.pdf

Linux Cron

Το Ubuntu έρχεται με ένα δαίμονα cron που χρησιμοποιείται γιαπρογραμματισμό εργασιών που πρέπει να εκτελούνται σε συγκεκριμένη χρονική στιγμή. Το Crontab σάς επιτρέπει να καθορίζετε τις ενέργειες και τους χρόνους που πρέπει να εκτελεστούν. Αυτός είναι ο τρόπος με τον οποίο κανονικά προγραμματίζετε μια εργασία χρησιμοποιώντας το εργαλείο γραμμής εντολών.

Ανοίξτε ένα παράθυρο τερματικού και εισάγετε crontab -e.

Καθένα από τα τμήματα σε ένα crontab χωρίζεται απόένα διάστημα, με το τελευταίο τμήμα να έχει έναν ή περισσότερους χώρους μέσα του. Μια καταχώρηση cron αποτελείται από λεπτά (0-59), ώρα (0-23, 0 = μεσάνυχτα), ημέρα (1-31), μήνα (1-12), ημέρα της εβδομάδας (0-6, 0 = Κυριακή), εντολή. Η τρίτη καταχώρηση στα παραπάνω crontab μεταφορτώνει το wget.pdf στις 2 π.μ. Η πρώτη καταχώρηση (0) και η δεύτερη καταχώρηση (2) σημαίνει 2:00. Η τρίτη έως την πέμπτη εγγραφή (*) σημαίνει οποιαδήποτε ώρα της ημέρας, μήνα ή εβδομάδας. Η τελευταία καταχώρηση είναι η εντολή wget για να κατεβάσετε το αρχείο wget.pdf από την καθορισμένη διεύθυνση URL.

Αυτό είναι το βασικό για το wget και πώς λειτουργεί το Cron. Ας πάρουμε ένα κέρμα σε ένα πραγματικό παράδειγμα ζωής για το πώς να προγραμματίσετε μια λήψη.

Προγραμματισμός λήψης

Πάμε να κατεβάσετε τον Firefox 3.6 στις 2 π.μ. Δεδομένου ότι ο ISP μας δίνει μόνο περιορισμένο αριθμό δεδομένων, πρέπει να διακόψουμε τη λήψη στις 8 π.μ. Αυτή είναι η εμφάνιση της ρύθμισης.

Αγνοήστε τις πρώτες 2 καταχωρίσεις στο παραπάνω crontab. Η τρίτη και η τέταρτη εντολή είναι οι μόνο 2 εντολές που χρειάζεστε. Η τρίτη εντολή ρυθμίζει μια εργασία που θα κατεβάσει τον Firefox στις 2 π.μ.:

[κώδικας]
0 2 * * * wget -c http://download.mozilla.org/?product=firefox-3.6.6&os=win&lang=el-GR
[/κώδικας]

Οι επιλογές -c υποδηλώνουν ότι το wget πρέπει να συνεχίσει την υπάρχουσα λήψη αν δεν έχει ολοκληρωθεί.

Η τέταρτη εντολή θα σταματήσει το wget στις 8 π.μ. Το 'Killall' είναι μια εντολή unix που σκοτώνει τις διαδικασίες από το όνομα.

[κώδικας]
0 8 * * * killall wget
[/κώδικας]

Το killall wget λέει στο Ubuntu να σταματήσει το wget από τη λήψη του αρχείου στις 8 π.μ.

Άλλες χρήσιμες εντολές wget

1. Καθορισμός του καταλόγου για τη λήψη ενός αρχείου

[κώδικας]
wget -output-document = / home / zainul / Λήψεις / wget manual.pdf http://www.gnu.org/software/wget/manual/wget.pdf
[/κώδικας]

η επιλογή -output-document σας επιτρέπει να καθορίσετε τον κατάλογο και το όνομα του αρχείου που κατεβάζετε

2. Λήψη ιστοτόπου

Το wget είναι επίσης ικανό να κατεβάσει έναν ιστότοπο.

[κώδικας]
wget -m http://www.google.com/profiles/zainul.franciscus
[/κώδικας]

Η παραπάνω εντολή θα κατεβάσει ολόκληρη την ιστοσελίδα μου στο προφίλ Google. Η επιλογή '-m' λέει στο wget να κατεβάσει μια εικόνα 'mirror' της καθορισμένης διεύθυνσης URL.

Μια άλλη σημαντική επιλογή είναι να πείτε στο wget πόσες συνδέσεις θα πρέπει να ακολουθήσει όταν κατεβάσει έναν ιστότοπο.

[κώδικας]
wget -r -l1 http://www.google.com/profiles/zainul.franciscus
[/κώδικας]

Η παραπάνω εντολή wget χρησιμοποιεί δύο επιλογές. Η πρώτη επιλογή '-r' λέει στο wget να κατεβάσει αναδρομικά τον καθορισμένο ιστότοπο. Η δεύτερη επιλογή '-l1' λέει στο wget να πάρει μόνο το πρώτο επίπεδο συνδέσμων από τον συγκεκριμένο ιστότοπο. Μπορούμε να ορίσουμε τρία επίπεδα '-12' και '-13'.

3. Ignoring entry robot

Ο κύριος ιστός διατηρεί ένα αρχείο κειμένου που ονομάζεται Robot.txt. Το 'Robot.txt' διατηρεί μια λίστα με URL που ένας ανιχνευτής ιστοσελίδων, όπως το wget, δεν πρέπει να ανιχνεύει. Μπορούμε να πούμε στο wget να αγνοήσει την επιλογή 'Robot.txt' με την επιλογή '-erobots = off'. Η ακόλουθη εντολή λέει στο wget να κατεβάσει την πρώτη σελίδα του προφίλ μου Google και να αγνοήσει το αρχείο Robot.txt.

[κώδικας]
wget -erobots = εκτός http://www.google.com/profiles/zainul.franciscus
[/κώδικας]

Μια άλλη χρήσιμη επιλογή είναι -U. Αυτή η επιλογή θα αποκρύψει το wget ως πρόγραμμα περιήγησης. Λάβετε υπόψη ότι η κάλυψη μιας εφαρμογής ως άλλης αίτησης ενδέχεται να παραβιάσει τον όρο και την υπηρεσία ενός παρόχου υπηρεσιών ιστού.

[κώδικας]
wget -erobots = off -U Mozilla http://www.google.com/profiles/zainul.franciscus
[/κώδικας]

συμπέρασμα

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

[κώδικας]
$ man wget
[/κώδικας]

να κατανοήσουμε άλλες επιλογές που μπορούμε να χρησιμοποιήσουμε με το wget.

Συνδέσεις

Wget Manual
Πώς να συνδυάσετε δύο ληφθέντα αρχεία όταν το wget αποτυγχάνει κατά το ήμισυ
Linux QuickTip: Λήψη και απενεργοποίηση σε ένα βήμα