Πίνακας περιεχομένων:

CovBot - ένα Chatbot βασισμένο στο WhatsApp για πληροφορίες COVID 19 & Περισσότερα: 7 βήματα
CovBot - ένα Chatbot βασισμένο στο WhatsApp για πληροφορίες COVID 19 & Περισσότερα: 7 βήματα

Βίντεο: CovBot - ένα Chatbot βασισμένο στο WhatsApp για πληροφορίες COVID 19 & Περισσότερα: 7 βήματα

Βίντεο: CovBot - ένα Chatbot βασισμένο στο WhatsApp για πληροφορίες COVID 19 & Περισσότερα: 7 βήματα
Βίντεο: CET Covid Robot | Our first implementation | CET CovBot v1.0 2024, Ιούλιος
Anonim
Image
Image
Δημιουργήστε έναν λογαριασμό Twilio
Δημιουργήστε έναν λογαριασμό Twilio

Το CoVbot είναι ένα απλό και διαισθητικό chatbot με βάση το Whatsapp. Το κύριο χαρακτηριστικό του bot είναι:

Μπορεί να σας δώσει την πιο πρόσφατη κατάσταση του COVID-19 στη χώρα επιλογής με απλό και διαισθητικό τρόπο.

Επιπλέον, το bot μπορεί να προτείνει διασκεδαστικές δραστηριότητες για να κάνετε στο σπίτι, όπως:

  1. Προτείνετε μια ταινία - Μια ταινία για παρακολούθηση από τη λίστα των 10 κορυφαίων ταινιών, με μια σύντομη επισκόπηση της πλοκής και της διάρκειας. Δεδομένου ότι αυτή η λίστα δεν είναι κωδικοποιημένη στο λογισμικό, αυτό θα σας δίνει πάντα τις πιο πρόσφατες ενημερώσεις με βάση τις τρέχουσες τάσεις.
  2. Προτείνετε μια τηλεοπτική εκπομπή - Μια τηλεοπτική εκπομπή για να παρακολουθήσετε από τις πιο δημοφιλείς τηλεοπτικές εκπομπές, με μια σύντομη επισκόπηση της πλοκής και των βαθμολογιών. Δεδομένου ότι αυτή η λίστα δεν είναι κωδικοποιημένη στο λογισμικό, αυτό θα σας δίνει πάντα τις πιο πρόσφατες ενημερώσεις με βάση τις τρέχουσες τάσεις.
  3. Προτείνετε ένα βιβλίο - Ένα βιβλίο για ανάγνωση από τη λίστα 10 κορυφαίων βιβλίων, με την εικόνα και το εξώφυλλο του βιβλίου.
  4. Καθημερινές προπονήσεις-Αυτό είναι ένα βίντεο που βασίζεται σε ένα πρόγραμμα 7 ημερών προπόνησης που παρέχεται από το CRANK gym στο λογαριασμό τους στο Instagram.

Εάν σας αρέσει αυτό το Instructable, σκεφτείτε να το ψηφίσετε στον Διαγωνισμό Συγγραφέα Πρώτου Στοιχείου. (και ναι, αυτό είναι το πρώτο μου διδακτικό, οπότε αν κάτι δεν είναι σαφές ή χρειάζεται περισσότερη εξήγηση, ενημερώστε με στην ενότητα σχολίων και μπορώ να σας βοηθήσω:)

Προμήθειες

Αυτό το έργο είναι μόνο έργο που βασίζεται σε λογισμικό, οπότε όποιος ακολουθεί αυτό το εκπαιδευτικό πρόγραμμα με φορητό υπολογιστή/επιτραπέζιο υπολογιστή/macOS/Linux και διαδίκτυο μπορεί να ολοκληρώσει αυτό το έργο. Θα συμπεριλάβω επίσης μια λεπτομερή ενότητα στο τέλος για να εξηγήσω τον κώδικα/διαδικασία με περισσότερες λεπτομέρειες για άτομα με κάποια εμπειρία προγραμματισμού. Σημειώστε ότι αυτό δεν απαιτείται για την ολοκλήρωση του έργου

Επίπεδο δυσκολίας έργου:

Δεν είναι πολύ εύκολο, αλλά όχι πολύ δύσκολο

Το υλικό που θα χρησιμοποιήσουμε:

  • Φορητός υπολογιστής/επιτραπέζιος υπολογιστής με Windows/macOS/Linux.
  • Ένα κινητό τηλέφωνο με εγκατεστημένο το WhatsApp Messenger

Το λογισμικό που θα χρησιμοποιήσουμε:

  1. Γλώσσα προγραμματισμού Python
  2. ngrok - είναι ένα εργαλείο που μας επιτρέπει να έχουμε πρόσβαση στον διακομιστή μας εκτός του δικτύου μας
  3. Editor της επιλογής σας: (π.χ. Σημειωματάριο ++, Sublime Text, Vim κ.λπ.)

Βήμα 1: Εγκαταστήστε το απαιτούμενο λογισμικό

Image
Image

Σε αυτό το βήμα θα κάνουμε τα εξής:

  1. Εγκαταστήστε το Python> 3.6 και δοκιμάστε το
  2. Εγκαταστήστε τις απαιτούμενες βιβλιοθήκες python
  3. Εγκαταστήστε το ngrok

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

Εγκατάσταση Python:

Ολόκληρη η βάση κώδικα backend/server για αυτό το έργο είναι γραμμένη σε Python 3.6. Επομένως, για να τρέξουμε τις εφαρμογές μας πρέπει να έχουμε Python> 3.6 εγκατεστημένα στον υπολογιστή μας. Ακολουθήστε το σεμινάριο του CoreySchafer σχετικά με τον τρόπο εγκατάστασης του python για Windows και macOS

Μπορείτε να ελέγξετε ότι όλα έχουν εγκατασταθεί σωστά πληκτρολογώντας τα ακόλουθα στο cmd/Terminal:

python -c 'print (f "Hello World")'

Εάν όλα έχουν εγκατασταθεί σωστά, τότε το Hello World θα πρέπει να εκτυπωθεί στην οθόνη. Εάν λάβετε μη έγκυρο σφάλμα σύνταξης, τότε έχετε εγκαταστήσει λάθος έκδοση python. Εγκαταστήστε μια έκδοση python> = 3.6

Εγκαταστήστε τις απαιτούμενες βιβλιοθήκες python χρησιμοποιώντας pip:

Θα χρησιμοποιήσουμε τις ακόλουθες βιβλιοθήκες python για να λειτουργήσει το λογισμικό μας:

  1. Φιάλη - Αυτό είναι το πλαίσιο για τον διακομιστή μας
  2. Twilio - Αυτή η βιβλιοθήκη παρέχει έναν τρόπο επικοινωνίας της python με το WhatsApp
  3. Αίτημα - Αυτή η βιβλιοθήκη χρησιμοποιείται για να ζητήσει δεδομένα από API
  4. BeautifulSoup4 - Αυτή η βιβλιοθήκη χρησιμοποιείται για την απόσπαση πληροφοριών από ιστότοπους
  5. lxml - Αυτή η βιβλιοθήκη χρησιμοποιείται σε συνδυασμό με το BeautifulSoup για την εξαγωγή των σχετικών πληροφοριών από έναν ιστότοπο

Για να εγκαταστήσετε αυτές τις βιβλιοθήκες μπορείτε να κάνετε τα εξής:

Ανοίξτε το CMD/Terminal και πληκτρολογήστε την ακόλουθη εντολή:

pip φιάλη εγκατάστασης, twilio, αίτημα, beautifulsoup4, lxml

Ή

Κατεβάστε το αρχείο Requires.txt και ανοίξτε ένα τερματικό στον κατάλογο όπου βρίσκεται το αρχείο και πληκτρολογήστε:

pip install -r απαιτήσεις.txt

Εγκαταστήστε το ngrok

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

Ακολουθεί τον οδηγό στον ιστότοπο της ngrok για να εγκαταστήσετε το ngrok για το λειτουργικό σύστημα που χρησιμοποιείτε.

Συμβουλή: Το βήμα 3 του οδηγού δεν σχετίζεται με αυτό το έργο, επομένως μπορεί να παραλειφθεί

Βήμα 2: Δημιουργήστε έναν λογαριασμό Twilio

Σε αυτό το βήμα θα κάνουμε τα εξής:

  1. Εγγραφή για λογαριασμό Twilio
  2. Γρήγορη εισαγωγή σε χρήσιμες ενότητες στο Twilio's Console

Εγγραφείτε:

Σε αυτό το έργο, θα χρησιμοποιήσουμε το Twilio Whatsapp API για να συνδέσουμε το πρόγραμμα python στο Whatsapp. Για να μπορέσουμε να χρησιμοποιήσουμε το Twilio API, πρέπει πρώτα να δημιουργήσουμε έναν λογαριασμό στον επίσημο ιστότοπο του Twilio. Για δοκιμαστικό λογαριασμό, το Twilio προσφέρει δωρεάν πίστωση 15 $ σε εμάς για χρήση.

Γρήγορη εισαγωγή:

Αφού δημιουργήσετε έναν λογαριασμό, τα πιο ενδιαφέροντα τμήματα της κονσόλας Twilio για αυτό το έργο είναι:

Πίνακας ελέγχου - Από τον πίνακα ελέγχου, μπορείτε να δείτε το ποσό της πίστωσης που σας απομένει, μπορείτε να επεξεργαστείτε το όνομα του έργου σας και να αλλάξετε τη γλώσσα προγραμματισμού

Υποενότητα Whatsapp στην ενότητα Προγραμματιζόμενα SMS - Από την ενότητα Whatsapp της κονσόλας, μπορείτε να αποκτήσετε πρόσβαση στον κωδικό συμμετοχής για το bot, τον αριθμό του Whatsapp που θα χρησιμοποιήσουμε στο έργο για να μιλήσουμε στο bot μας και επίσης τη ρύθμιση του webhook Το Περισσότερες λεπτομέρειες για όλα αυτά θα περιγραφούν στα επόμενα βήματα

Βήμα 3: Λάβετε κλειδί API για δεδομένα, ταινίες και τηλεοπτικές εκπομπές COVID 19

Λάβετε κλειδί API για δεδομένα, ταινίες και τηλεοπτικές εκπομπές COVID 19
Λάβετε κλειδί API για δεδομένα, ταινίες και τηλεοπτικές εκπομπές COVID 19
Λάβετε κλειδί API για δεδομένα, ταινίες και τηλεοπτικές εκπομπές COVID 19
Λάβετε κλειδί API για δεδομένα, ταινίες και τηλεοπτικές εκπομπές COVID 19

Ένα κλειδί API ή ένα κλειδί διεπαφής προγραμματισμού εφαρμογών είναι ένας κωδικός που περνά από εφαρμογές υπολογιστή. Στη συνέχεια, το πρόγραμμα ή η εφαρμογή καλεί το API ή τη διεπαφή προγραμματισμού εφαρμογών για να προσδιορίσει τον χρήστη, τον προγραμματιστή ή το πρόγραμμα που καλεί σε έναν ιστότοπο.

Χρησιμοποιούμε ένα API για να λαμβάνουμε πληροφορίες για την τελευταία κατάσταση, ταινίες και τηλεοπτικές εκπομπές COVID 19. Για να αποκτήσετε πρόσβαση στο API χρειάζεστε ένα κλειδί που είναι προσωπικό για κάθε χρήστη. Σε αυτό το βήμα, θα λάβουμε αυτά τα κλειδιά

Λήψη κλειδιού API για δεδομένα COVID 19:

  • Συνδεθείτε ή εγγραφείτε για τον λογαριασμό σας RapidAPI.
  • Στη συνέχεια, μεταβείτε στο API COVID-19 από τον Gramzivi
  • Κάντε κύλιση προς τα κάτω στην ενότητα "Παράμετροι κεφαλίδας" της κονσόλας API.
  • Το κλειδί API θα πρέπει να είναι ορατό στο πεδίο "Κλειδί X-RapidAPI".

Λήψη κλειδιού API για δεδομένα ταινιών και τηλεοπτικών εκπομπών:

  • Συνδεθείτε ή εγγραφείτε για τον λογαριασμό σας TMDB
  • Μετά από αυτό, μεταβείτε στη ρύθμισή σας - API
  • Κάντε κύλιση προς τα κάτω στην ενότητα "Κλειδί API (ταυτότητα v3)"
  • Το κλειδί API πρέπει να είναι ορατό κάτω από αυτό

Δημιουργήστε το αρχείο "config.py"

Τώρα θα δημιουργήσουμε ένα αρχείο config.py για να αποθηκεύσουμε τα κλειδιά API. Δημιουργούμε ένα ξεχωριστό αρχείο για αυτά, επειδή τα κλειδιά API είναι εμπιστευτικές πληροφορίες και αν μοιραστείτε το έργο σας, δεν πρέπει να μοιραστείτε το κλειδί API.

  • Δημιουργήστε έναν νέο κατάλογο έργου
  • Μέσα στον πρόσφατα δημιουργημένο κατάλογο, δημιουργήστε ένα νέο αρχείο που ονομάζεται "config.py"
  • Επεξεργαστείτε αυτό το αρχείο με έναν επεξεργαστή της επιλογής σας (Sublime, Σημειωματάριο ++) και αντιγράψτε και αντικαταστήστε το ακόλουθο κείμενο με σχετικές πληροφορίες που ελήφθησαν στο προηγούμενο βήμα:

session_key = "μυστικό" #Αυτό δεν είναι ασφαλές.. αλλά μόνο για δοκιμή είναι εντάξει

Rapid_api_key = "" api_key = ""

Αποθηκεύστε το αρχείο

Βήμα 4: Συνδέστε Python και Twilio Via Ngrok

Σε αυτό το βήμα θα κάνουμε τα εξής:

  1. Κατεβάστε τον πηγαίο κώδικα
  2. Εκτελέστε το πρόγραμμα και προωθήστε την τοπική IP σε δημόσια διεύθυνση μέσω ngrok, ώστε να μπορούμε να της υποβάλλουμε ένα αίτημα
  3. Διαμορφώστε τον λογαριασμό μας Twilio για να προωθήσετε το αίτημα στον διακομιστή μας

Κατεβάστε τον πηγαίο κώδικα για το bot:

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

Εκτέλεση του προγράμματος:

Μεταβείτε στον κατάλογο του πηγαίου κώδικα στο CMD/τερματικό και εκτελέστε την ακόλουθη εντολή:

python server_main.py

Βεβαιωθείτε ότι έχετε το "config.py" που δημιουργήσαμε στο τελευταίο βήμα, διαφορετικά θα λάβετε σφάλμα

Η έξοδος πρέπει να είναι κάπως έτσι:

* Εξυπηρέτηση εφαρμογής Flask "server_main" (τεμπέλης φόρτωση)

* Περιβάλλον: παραγωγή ΠΡΟΕΙΔΟΠΟΙΗΣΗ: Αυτός είναι ένας διακομιστής ανάπτυξης. Μην το χρησιμοποιείτε σε ανάπτυξη παραγωγής. Αντ 'αυτού, χρησιμοποιήστε έναν διακομιστή παραγωγής WSGI. * Λειτουργία εντοπισμού σφαλμάτων: σε λειτουργία * Εκτέλεση σε https://127.0.0.1:5000/ (Πατήστε CTRL+C για έξοδο) * Επανεκκίνηση με stat * Ο εντοπισμός σφαλμάτων είναι ενεργός! * PIN εντοπισμού σφαλμάτων: 740-257-236

Αυτό σημαίνει ότι ο διακομιστής σας λειτουργεί σωστά στο τοπικό σας δίκτυο στη θύρα 5000. Για να καταστήσουμε αυτόν τον διακομιστή προσβάσιμο εκτός του τοπικού σας δικτύου, θα χρησιμοποιήσουμε τη θέρμανση

Προώθηση τοπικής IP σε δημόσια διεύθυνση μέσω ngrok

Μεταβείτε στον κατάλογο στον οποίο πραγματοποιήσατε λήψη του ngrok μέσω CMD/τερματικού και εκτελέστε την ακόλουθη εντολή:

ζελκ http 5000

Η έξοδος πρέπει να είναι κάπως έτσι:

ngrok by @inconshreveable (Ctrl+C για διακοπή)

Κατάσταση συνεδρίας online Η συνεδρία λήγει 7 ώρες, 59 λεπτά Έκδοση 2.3.35 Περιοχή Ηνωμένες Πολιτείες (ΗΠΑ) Διεπαφή Ιστού https://127.0.0.1:4040 Προώθηση _https://d44c955749bf.ngrok.io_ -> _https:// localhost: 5000_ Προώθηση _https://d44c955749bf.ngrok.io_ -> _https:// localhost: 5000_ Συνδέσεις ttl opn rt1 rt5 p50 p90 0 0 0,00 0,00 0,00 0,00

Αντιγράψτε τον σύνδεσμο HTTP από το τμήμα "Forwading" (μόλις μέχρι το ngrok.io). (Έχω προσθέσει το _ σε αυτό το παράδειγμα για να αποφύγω να το διδάξω ως σύνδεσμο)

Διαμορφώστε το Twilio για χρήση της νέας διεύθυνσης για προώθηση του αιτήματος διακομιστή σε:

Τώρα που προωθήσαμε με επιτυχία τον διακομιστή μας για πρόσβαση στο κοινό, πρέπει να διαμορφώσουμε το Twilio έτσι ώστε όταν υποβάλλεται ένα αίτημα χρησιμοποιώντας το Twilio Whatsapp API να προωθήσουμε το αίτημα στον διακομιστή μας. Για να γίνει αυτό πρέπει να κάνουμε τα εξής:

  1. Μεταβείτε στην ενότητα Whatsapp στην κονσόλα Twilio
  2. Μεταβείτε στην υποενότητα "Sanbox"
  3. Στο πλαίσιο κειμένου "ΠΟΤΕ ΕΡΧΕΤΑΙ ΜΗΝΥΜΑ" επικολλήστε τον σύνδεσμο HTTP από το ngrok που αντιγράφηκε με την επέκταση /sms (ΜΗΝ ΑΝΤΙΓΡΑΦΕΤΕ ΤΟ _ στην αρχή και στο τέλος):

_https://d44c955749bf.ngrok.io/sms_

Τώρα όλα έχουν ρυθμιστεί για το chatbot. Στο επόμενο βήμα, μπορούμε να ελέγξουμε αν όλα λειτουργούν σωστά

Βήμα 5: Δοκιμάστε την εφαρμογή μας

Δοκιμάστε την εφαρμογή μας
Δοκιμάστε την εφαρμογή μας
Δοκιμάστε την εφαρμογή μας
Δοκιμάστε την εφαρμογή μας
Δοκιμάστε την εφαρμογή μας
Δοκιμάστε την εφαρμογή μας

Σε αυτό το βήμα θα κάνουμε τα εξής:

  1. Εγγραφείτε στο bot μας χρησιμοποιώντας τον κωδικό πρόσβασης
  2. Δοκιμάστε την εφαρμογή μας

Εγγραφείτε στο bot μας χρησιμοποιώντας τον κωδικό πρόσβασης

Σε αυτό το έργο, θα χρησιμοποιήσουμε τον Twilio's Whatsapp Sandbox Number για το Whatsapp bot μας. Για κάθε άτομο, αυτός ο αριθμός θα είναι διαφορετικός. Μπορείτε να βρείτε τον αριθμό σας ως εξής:

  • Συνδεθείτε στον λογαριασμό σας Twilio
  • Μεταβείτε στην κονσόλα Twilio -> Τμήμα Whatsapp -> Sandbox
  • Θα δείτε τον αριθμό Twilio Sandbox με το ακόλουθο κείμενο:

Προσκαλέστε τους φίλους σας στο Sandbox σας. Ζητήστε τους να στείλουν ένα μήνυμα WhatsApp στη διεύθυνση:

Λόγω μιας πολιτικής ασφαλείας του Whatsapp, όλοι όσοι θέλουν να μιλήσουν σε ένα αυτοματοποιημένο bot μέσω του Whatsapp πρέπει να επιλέξουν ρητά τη χρήση ενός κωδικού. Μπορείτε να μάθετε τον κωδικό σας κοιτάζοντας στην ίδια ενότητα με τον αριθμό του Twilio sandbox με το κείμενο:

Αφού αποκτήσετε τον Twilio Sandbox Whatsapp Number και τον κωδικό συμμετοχής, για να ξεκινήσετε να χρησιμοποιείτε το bot, μεταβείτε στο κινητό σας τηλέφωνο και κάντε τα εξής:

  1. Αποθηκεύστε τον "Twilio Sandbox Whatsapp Number" στην επαφή σας με το όνομα που επιλέξατε (π.χ. CovBot)
  2. Ανοίξτε το Whatsapp και στείλτε το ακόλουθο μήνυμα σε αυτήν την επαφή:

Συμμετοχή

Θα πρέπει να δείτε ένα μήνυμα σαν αυτό:

Twilio Sandbox: Είστε έτοιμοι….

Αυτό σημαίνει ότι έχετε συνδεθεί με το bot σας και είστε έτοιμοι να το ρωτήσετε qs

Δοκιμάστε την εφαρμογή μας:

Για να δοκιμάσετε τις διάφορες δυνατότητες του bot μετά τη σύνδεση, στείλτε το ακόλουθο μήνυμα στο bot:

γεια

Θα πρέπει να δείτε το ακόλουθο κείμενο:

Καλώς ήλθατε στο CoVbot!

Ένα απλό chatbot που μπορεί να δώσει τις πιο πρόσφατες ενημερώσεις του COVID-19 με απλό, γρήγορο και εύκολο τρόπο. Δεδομένου ότι είμαστε όλοι σε καραντίνα, το bot μπορεί να χρησιμοποιηθεί για να προτείνει κάποιες διασκεδαστικές δραστηριότητες για να αξιοποιήσουμε στο έπακρο τον χρόνο μας στο σπίτι καθώς προσπαθούμε να κρατήσουμε ασφαλείς τον εαυτό μας, τους φίλους και την οικογένειά μας. Ελπίζουμε να το απολαύσετε και να το βρείτε χρήσιμο! Στείλτε 4 για να ξεκινήσετε!

Τώρα μπορείτε να ακολουθήσετε την επιλογή για να δοκιμάσετε τις διαφορετικές δυνατότητες του bot.

ΑΥΤΟ ΕΙΝΑΙ! Το Whatsapp Chatbot σας είναι έτοιμο !!!! Συγχαρητήρια

Βήμα 6: Πώς λειτουργεί και μελλοντική βελτίωση:

Πώς λειτουργεί και μελλοντική βελτίωση
Πώς λειτουργεί και μελλοντική βελτίωση
Πώς λειτουργεί και μελλοντική βελτίωση
Πώς λειτουργεί και μελλοντική βελτίωση
Πώς λειτουργεί και μελλοντική βελτίωση
Πώς λειτουργεί και μελλοντική βελτίωση
Πώς λειτουργεί και μελλοντική βελτίωση
Πώς λειτουργεί και μελλοντική βελτίωση

Αυτή η ενότητα απευθύνεται σε άτομα που έχουν κάποια εμπειρία προγραμματισμού python. Εάν δεν το κάνετε, μπορείτε να παραλείψετε αυτήν την ενότητα

Επεξήγηση κώδικα

Κύριος βρόχος:

Όταν αποστέλλεται ένα μήνυμα Whatsapp στον αριθμό του Twilio σας, το Twilio API κάνει ένα αίτημα POST στον διακομιστή σας που καθορίσατε. Ο διακομιστής υλοποιείται χρησιμοποιώντας το πλαίσιο Flask και έτσι μπορούμε να χρησιμοποιήσουμε το αντικείμενο Flask Request για να ανακτήσουμε τα δεδομένα που ελήφθησαν κατά τη διάρκεια του αιτήματος POST. Με βάση τα δεδομένα (Αριθμοί σε αυτήν την περίπτωση) αποφασίζουμε ποια επιλογή έχει επιλέξει ο χρήστης και δίνουμε τις κατάλληλες πληροφορίες

Δεδομένα και ταινίες και τηλεοπτικές εκπομπές COVID:

Τα δεδομένα COVID 19, Ταινίες και τηλεοπτικές εκπομπές ανακτήθηκαν από ένα API. Χρησιμοποιώ τη βιβλιοθήκη python αιτήματος για να λάβω τα δεδομένα και στη συνέχεια να τα μετατρέψω σε μορφή JSON. Τότε απλά αναλύω τις σχετικές πληροφορίες. Για τις ταινίες και την τηλεοπτική εκπομπή, χρησιμοποίησα επίσης την τυχαία βιβλιοθήκη python για να επιλέξω μια τυχαία τηλεοπτική εκπομπή και ταινία

Λεπτομέρειες βιβλίου

Ο αλγόριθμος προτάσεων βιβλίου που χρησιμοποιείται στο έργο είναι απλώς μια ξύστρα ιστού. Δεν μπόρεσα να βρω κανένα API που να σας δίνει ένα τυχαίο βιβλίο με λεπτομέρειες, οπότε απλώς ξύνω έναν ιστότοπο χρησιμοποιώντας το BeautifulSoup4 και χρησιμοποιώντας τον αναλυτή lxml εξάγω τις σχετικές πληροφορίες του βιβλίου

Λεπτομέρειες υπομενού:

Η εφαρμογή των υπομενού ήταν λίγο πιο δύσκολη από τα υπόλοιπα, καθώς τα μηνύματα Whatsapp μοιάζουν με SMS που είναι πρωτόκολλο χωρίς καθεστώς. Για να το λύσω, χρησιμοποίησα δύο τεχνικές:

  1. Χρήση καθολικών μεταβλητών για να θυμάστε την κατάσταση του μηνύματος - Αυτό εφαρμόζεται μόνο για την υποεπιλογή COVID 19. Σε αυτό όταν ένας χρήστης επιλέγει "Κατάσταση του COVID 19 στην επιλογή της χώρας μου", μια καθολική μεταβλητή που ονομάζεται uncomplete_message έχει οριστεί σε True για να υποδείξει ότι τότε χρειάζεται ακόμα ένα μήνυμα που να βασίζεται στην προηγούμενη επιλογή. Στη συνέχεια, υπάρχει ένας έλεγχος στην αρχή που ελέγχει εάν ένα μήνυμα έχει επισημανθεί ως μη πλήρες, αν ναι, υποθέτει ότι το μήνυμα είναι το όνομα της χώρας για τα δεδομένα του COVID και μεταφέρει τις πληροφορίες στη σωστή λειτουργία και ορίζει το μη ολοκληρωμένο μήνυμα της καθολικής μεταβλητής σε False
  2. Χρήση Twilio Cookies και Flask Session - Τα Cookies και τα Flask Session χρησιμοποιούνται στο υπομενού "Προτείνετε μια δραστηριότητα καραντίνας" για να εφαρμόσετε την κατάσταση του κράτους, όπως κάθε web εφαρμογή στο Διαδίκτυο που χρησιμοποιεί αυτές τις μέρες, αλλά αντί να θυμάστε πράγματα όπως το όνομα χρήστη σας ή λογαριασμό θυμάται τη μετατροπή μεταξύ δύο αριθμών. Αν σας αρέσουν περισσότερες πληροφορίες σχετικά με αυτό το μέρος, σας συνιστούσα να διαβάσετε αυτόν τον εκπληκτικό οδηγό για τα Twilio Cookies, γραμμένα από την Ομάδα Twilio

Μελλοντικές βελτιώσεις:

  1. Χρησιμοποιήστε το Object Orientedness of Python and Design Patterns για να βελτιώσετε την αρχιτεκτονική κώδικα και το DRYness
  2. Κατάργηση καθολικών μεταβλητών
  3. Ο χειρισμός σφαλμάτων μπορεί να βελτιωθεί
  4. Αυτόματη ενημέρωση της διεύθυνσης ngrok χρησιμοποιώντας καλαμπόκι και Twilio CLI
  5. Τεκμηρίωση κώδικα

Βήμα 7: Τελικές σημειώσεις

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

Συνιστάται: