
Harry James
0
2644
223
Twitter est le plus grand répertoire mondial de messages courts émanant de personnes qui n'ont rien à dire - et maintenant, vous pouvez également contribuer à ce projet épique avec un bot Twitter automatisé, optimisé par votre Raspberry Pi. Je plaisante, bien sûr - certaines personnes tweetent des choses intéressantes. Comment utiliser Twitter pour rechercher des mentors dans votre domaine d'intérêt Comment utiliser Twitter pour rechercher des mentors dans votre domaine d'intérêt Dans le monde réel, un mentor est une bonne idée. enseignant qui soutient et guide une personne et l’aide à maximiser son potentiel. Dans le monde en ligne, vous seriez très chanceux de trouver quelqu'un qui va…. Je ne suis cependant pas l'un d'eux. J'utilise le mien pour faire la promotion de produits sans scrupule en échange de contenus gratuits, d'entrées au concours et de la publication automatique de nouveaux épisodes de notre propre podcast Technophilia. Peu importe - mes partisans m'aiment!
@ w0lfiesmith Je déteste votre compte Twitter. Tellement de.
- Justin Pot (@jhpot) 21 août 2013
Maintenant, je vais ajouter à l'utilité de mon flux Twitter personnel en faisant en sorte qu'un Raspberry Pi tweet automatiquement sa température actuelle du processeur toutes les heures et une image de la webcam.!
Commencer
Ce projet utilise Python; un langage de programmation simple idéal pour les projets de bricolage. Nous allons commencer par installer Twython sur le Pi - un module Python pour l’interface avec Twitter; mettre en place un Twitter “application” obtenir une clé API; Ensuite, rendez-vous sur les tweets Pi en notre nom. Ça va être tellement amusant!
Je fais cela sur Raspian - mais cela devrait théoriquement fonctionner sur tout système d'exploitation Linux que vous avez sur les systèmes d'exploitation Pi 11 Raspberry Pi. Vous pouvez essayer 11 systèmes d'exploitation Raspberry Pi. Vous pouvez essayer Quel que soit votre projet Raspberry Pi, il existe système pour cela. Nous vous aidons à trouver le meilleur système d'exploitation Raspberry Pi pour vos besoins. . Si ce n'est déjà fait, assurez-vous de configurer SSH pour pouvoir nous connecter à distance et exécuter les commandes de la console..
Installation de Twython
C'est une bonne idée d'exécuter les mises à jour en premier. Copiez et collez les commandes suivantes une à la fois - la plupart nécessiteront une confirmation..
sudo apt-get mise à jour sudo apt-get mise à niveau sudo apt-get installer python-setuptools sudo easy_install pip sudo pip installer twython
Enregistrer une application Twitter
Pour utiliser l'API Twitter, c'est-à-dire l'interface REST que nous utiliserons pour publier de nouveaux tweets et interagir généralement avec Twitter en dehors du site Web de Twitter, nous devrons enregistrer une nouvelle application. Faites-le à partir de ce lien - vous n'avez pas besoin de spécifier une URL de rappel, mais créez un site Web si vous le souhaitez..
Vous verrez quelque chose qui ressemble à ceci une fois que vous avez terminé - ces clés vous sont propres..
Par défaut, l'application est configurée en lecture seule. Nous ne pourrons donc pas publier de tweets sans changer cela. Lire et écrire. Accédez à l'onglet Paramètres et modifiez le Type d'application.
Une fois enregistré, retournez à la Détails onglet et cliquez sur le bouton en bas pour créer un jeton d'accès OAuth - cela donne à votre application un accès à votre propre compte Twitter. Actualisez et laissez la page ouverte pour plus tard - nous devrons copier-coller certaines de ces clés dans une minute.
Créez votre projet Python
Commencez par créer un nouveau répertoire pour héberger votre projet Tweet, puis créez un nouveau fichier..
mkdir SillyTweeter cd SillyTweeter sudo nano SillyTweeter.py
Vous pouvez appeler ça comme vous voulez, évidemment.
Dans l’éditeur de texte qui apparaît, copiez et collez le texte suivant en remplaçant la clé du consommateur par la clé correspondante de la page de l’application Twitter que nous avons laissée ouverte plus tôt. Chaque touche est entourée de guillemets simples, assurez-vous de ne pas les manquer. Notez que CLÉ D'ACCÈS est dénommé Jeton d'accès sur la page de l'application Twitter.
#! / usr / bin / env système d'importation python de l'importation twython Twython CONSUMER_KEY = '*************** VOS DONNEES ************** ** 'CONSUMER_SECRET =' *************** VOS DONNEES **************** 'ACCESS_KEY =' ****** ********* VOS DONNÉES ***************** 'ACCESS_SECRET =' *************** VOS DONNÉES * *************** 'api = Twython (CONSUMER_KEY, CONSUMER_SECRET, ACCESS_KEY, ACCESS_SECRET) api.update_status (status = sys.argv [1])
Appuyez sur Ctrl-X et appuyez sur Y pour quitter et enregistrer le fichier. Rendez-le exécutable avec la commande suivante (en remplaçant votre nom de fichier Python si vous avez choisi autre chose)
sudo chmod + x SillyTweeter.py
Vous devriez maintenant pouvoir tester votre capacité à poster des tweets comme ceci:
python SillyTweeter.py 'Bonjour à tous, voici mon Raspberry Pi qui tweetait de plus en plus de bêtises'
Tweetez votre tempo de processeur
Maintenant que vous pouvez poster n'importe quel non-sens que vous voulez, ajustons l'application pour saisir la température actuelle du processeur, car je serai damné si le monde n'a pas besoin de savoir que toutes les heures.
Commencez par ajouter une autre bibliothèque d'importation pour os:
importation os
Ajoutez ensuite les lignes suivantes, en remplaçant le précédent api.update_status de l'exemple ci-dessus.
cmd = '/ opt / vc / bin / vcgencmd measure_temp' ligne = os.popen (cmd) .readline (). strip () temp = line.split ('=') [1] .split ("" ") [ 0] api.update_status (status = 'La température actuelle de mon processeur est' + temp + 'C')
Je n'expliquerai pas trop ce code car il n'a pas vraiment d'importance. Il exécute une commande qui enregistre la température, puis scinde la sortie pour en extraire le nombre, puis le tweete avec un message personnalisé. Vous pouvez trouver le code d'exemple complet ici.
Photos avec webcam
Faisons maintenant quelque chose de vraiment utile; nous allons tweet photos webcam. Heureusement, Twython supporte la fonction API update_status_with_media, ce qui simplifie les choses.
Branchez une webcam USB sur votre appareil et vérifiez si elle a été reconnue avec la commande:
ls / dev / video *
si tu vois vidéo0, tu es chanceux. J'ai utilisé une caméra Playstation 3 PSEye et tout a bien fonctionné.
Nous allons également utiliser le pygame bibliothèques pour prendre une photo; ajoutez les lignes suivantes juste après les instructions d'importation existantes:
importer pygame importer pygame.camera depuis pygame.locals importer * pygame.init () pygame.camera.init () cam = pygame.camera.Camera ("/ dev / video0", (640 480)) cam.start () image = cam.get_image () pygame.image.save (image, 'webcam.jpg')
En bref, vous avez initialisé la webcam à une résolution spécifique (vous devrez peut-être régler le problème, c’est une très vieille caméra), pris une photo et l’avez enregistrée au format jpg. Nous allons juste écraser le même webcam.jpg à chaque exécution de l'application.
Enfin, ajustez la ligne update_status pour lire:
photo = open ('webcam.jpg', 'rb') api.update_status_with_media (media = photo, status = "Mon RPi envoie des images à Twitter =>")
Bien sûr, vous pouvez modifier le texte du statut en fonction de la température actuelle de votre CPU, si vous le souhaitez. Le code complet de cet exemple est ici.
Peux-tu répéter cela?
Un bot Twitter n'est utile que s'il s'exécute automatiquement plusieurs fois. vous ne voulez pas rester assis à exécuter la commande toutes les heures. Pour ce faire, utilisons la fonctionnalité de planification CRON du Pi (Qu'est-ce qu'un travail CRON? Automatisez votre sauvegarde Wordpress avec Simple Shell Scripting & CRON Automatisez votre sauvegarde Wordpress avec Simple Shell Scripting & CRON La dernière fois que nous avons parlé des sauvegardes Wordpress, je vous ai montré comment il était incroyablement facile de sauvegarder l'intégralité de votre base de données et vos fichiers via SSH avec seulement quelques commandes. Cette fois, je vais vous le montrer…)
sudo crontab -e
Coller dans cette ligne, pour courir toutes les heures.
* / 60 * * * * python /home/pi/SillyTweeter/SillyTweeter.py
Changer cela en * * * * * si vous voulez qu'il fonctionne toutes les minutes et soyez prêt à perdre des abonnés plus rapidement qu'un compte Twitter qui en perd rapidement.
C'est pour aujourd'hui. Je suis heureux d'avoir contribué davantage à la vaste profusion d'octets inutiles sur Internet, et j'espère que vous aussi! Montrez votre appréciation pour ce tutoriel en tweetant, et laissez-nous savoir ce que votre propre bot Twitter va tweeter dans les commentaires.
Crédit image: adafruit / flickr