Today's Mood:

Today's Mood:

Θα δημιουργήσουμε ένα πρόγραμμα το οποίο με την χρήση του request module μπορούμε εύκολα να κατεβάσουμε αρχεία απο το ιντερνετ. Αφού εγκαταστήσουμε το request module το κάνουμε import.

TIPS

το request module δεν έρχεται προεγκατεστημένο με την python οπότε πρεπει να το εγκαταστήσουμε πρώτα. Απο το command line γράφουμε:

  • pip install requests

Έπειτα θα χρησημοποιήσουμε την requests.get() function η οποία πέρνει σαν παράμετρο ένα URL και το κατεβάζει. για περισσότερες πληροφορίες σχετικά με την request module.

Έπειτα πρέπει να ελέξουμε ότι η ιστοσελίδα που δώσαμε σαν παράμετρο έχει status code “ok” δηλαδή 200 και όχι 404. Οπότε θέλουμε το res.status_code == requests.codes.ok να είναι True.

Όμως για να απλοποιήσουμε τον κώδικα μας θα χρησημοποιήσουμε την raise_for_status() method. Με τον τρόπο αυτό δημιουργούμε ένα exeption το οποίο δεν επιτρέπει στο πρόγραμμα να συνεχίσει εφόσον δεν έχει γίνει επιτυχής λήψη. Άρα ο κώδικας μας έχει ως εξής:

Λόγω του ότι το πρόγραμμα μας θέλουμε να έχει μια φυσικη ροή και να μην πετάει απλά ένα σφάλμα χωρίς ο χρήστης να έχει επίγνωση του τι γίνεται, θα χρησιμοποιήσουμε errors and exceptions.

TIPS

Όταν χρησιμοποιούμε error and exceptions γίνεται η εξής διαδικασία:

  • ο κώδικας που βρίσκεται ανάμεσα στο try και στο except εκτελείτε πρωτα
  • εάν δεν υπάρχουν σφάλματα η except απλά δεν εκτελείται και η try τερματίζεται
  • Αν προκύψει εξαίρεση κατά την εκτέλεση της try, το υπόλοιπο try παραλείπεται. Στη συνέχεια, αν η exception ταυτίζεται με την type exception που έχουμε δηλώσει τότε εκτελείται η exception
  • Εάν η exception δεν ταιριάζει με το keyward που έχουμε δώσει μετά την exception, τότε σταματαει το πρόγραμμα με ένα unhandled exception error.

Τέλος, πρέπει να αποθηκεύσουμε τα δεδομένα που συλλέξαμε.Χρησιμοποιόντας την open() και close() function καθώς και write() method της python θα αντιγράψουμε οτιδήποτε υπάρχει στην ιστοσελίδα σε ένα αρχείο txt που θα δημιουργήσουμε στον υπολογιστή μας.