Reklama

Twitter je najväčšie úložisko krátkych správ od ľudí, ktoré nemajú čo povedať - a teraz aj vy prispievajte do tohto epického projektu automatizovaným robotom Twitter, ktorý využíva technológia Raspberry Pi. Robím si srandu, samozrejme – niektorí ľudia skutočne tweetujú zaujímavé veci Ako používať Twitter na vyhľadávanie mentorov vo vašej oblasti záujmuV skutočnom svete je mentor múdry učiteľ, ktorý niekoho podporuje a vedie a pomáha im maximalizovať jeho potenciál. V online svete by ste mali šťastie, keď nájdete niekoho, kto ... Čítaj viac . Nie som však ani jeden z nich. Svoju baňu používam na nehanebnú propagáciu produktov výmenou za bezplatné veci, súťažné príspevky a automatické uverejňovanie nových epizód našej vlastnej Technophilia Podcast. Čokoľvek - moji nasledovníci ma milujú!

@ w0lfiesmith Nenávidím váš účet Twitter. Tak veľa.

- Justin Pot (@jhpot) 21. augusta 2013

Teraz sa pridám k užitočnosti môjho osobného streamu Twitter tým, že Raspberry Pi automaticky každú hodinu pípam svoju aktuálnu teplotu procesora a obrázok z webovej kamery!

instagram viewer

Začíname

Tento projekt používa Python; jednoduchý programovací jazyk ideálny pre kutilské projekty. Začneme inštaláciou Twython na Pi - modul Python na prepojenie s Twitterom; nastavenie aplikácie Twitter na získanie kľúča API; potom v našom mene urobte veci na tweet pre Pi. Bude to taká zábava!

Robím to na Raspianovi - teoreticky by to však malo fungovať Linux na OS máte na Pi 11 Operačné systémy, ktoré bežia na vašom Raspberry PiNech už je váš projekt Raspberry Pi, nech už je k dispozícii operačný systém. Pomôžeme vám nájsť najlepší Raspberry Pi OS pre vaše potreby. Čítaj viac . Ak ste to ešte neurobili, nezabudnite nastaviť SSH, aby sme sa mohli vzdialene prihlásiť a vykonávať príkazy konzoly.

Inštalácia Twythonu

Je dobré najskôr spustiť aktualizácie. Skopírujte a prilepte nasledujúce príkazy po jednom - väčšina si vyžaduje potvrdenie.

aktualizácia sudo apt-get. sudo apt-get upgrade. sudo apt-get install python-setuptools. sudo easy_install pip. sudo pip nainštalujte twython. 

Registrácia aplikácie Twitter

Aby sme mohli používať rozhranie Twitter API - tj rozhranie REST, ktoré používame na uverejňovanie nových tweetov a vo všeobecnosti interagujeme so službou Twitter mimo webových stránok Twitter -, musíme zaregistrovať novú aplikáciu. Urob to z tohto odkazu - nemusíte špecifikovať webovú adresu pre spätné volanie a ak chcete, jednoducho si vytvorte webovú stránku.

new-twitter-app

Po dokončení uvidíte niečo podobné - tieto kľúče sú pre vás jedinečné.

twitter-app

V predvolenom nastavení je aplikácia nastavená len na čítanie, takže nebudeme môcť publikovať tweety bez toho, aby ste ich zmenili na Čítaj a píš. Prejdite na kartu Nastavenia a zmeňte ikonu Typ aplikácie.

ReadWrite-access

Po uložení sa vráťte späť na stránku podrobnosti kliknite na tlačidlo v dolnej časti na vytvorte prístupový token OAuth - to umožňuje vašej aplikácii prístup k vášmu účtu Twitter. Obnovte stránku a nechajte stránku otvorenú na neskoršie. Niektoré z týchto kľúčov budeme musieť skopírovať za minútu.

prístupový token

Vytvorte si svoj Python projekt

Začnite vytvorením nového adresára, v ktorom bude umiestnený váš projekt Tweet, a potom vytvorte nový súbor.

mkdir SillyTweeter. cd SillyTweeter. sudo nano SillyTweeter.py. 

Samozrejme to môžete nazvať čokoľvek chcete.

V zobrazenom textovom editore skopírujte a prilepte nasledujúci text, ktorý nahradí spotrebiteľský kľúč príslušným kľúčom zo stránky aplikácie Twitter, ktorú sme predtým otvorili. Každý kľúč je obklopený jednoduchými úvodzovkami, preto ich určite nezmeškáte. Poznač si to PRÍSTUPOVÝ KĽÚČ sa označuje ako Prístupový token na stránke aplikácie Twitter.

#! / usr / bin / env python. import sys. z Twythonu import Twythonu. CONSUMER_KEY = '**************** VAŠE ÚDAJE ****************** CONSUMER_SECRET = '***************** VAŠE ÚDAJE ****************** ACCESS_KEY = '**************** VAŠE ÚDAJE ******************' ACCESS_SECRET = '***************** VAŠE ÚDAJE *******************' api = Twython (CONSUMER_KEY, CONSUMER_SECRET, ACCESS_KEY, ACCESS_SECRET) api.update_status (status = sys.argv [1])

Stlačte Ctrl-X a stlačením Y ukončite a uložte súbor. Spustite ho pomocou nasledujúceho príkazu (nahradenie názvu súboru Python, ak ste si vybrali niečo iné)

sudo chmod + x SillyTweeter.py. 

Teraz by ste mali mať možnosť otestovať svoju schopnosť uverejňovať tweety takto:

python SillyTweeter.py 'Ahojte všetci, toto je môj Raspberry Pi tweeting you more nezmysly'

Zdvojnásobenie teploty procesora

Teraz, keď môžete uverejňovať akékoľvek nezmysly, ktoré chcete, upravme aplikáciu tak, aby zachytila ​​aktuálnu teplotu procesora, pretože ak to svet nepotrebuje každú hodinu, bude mi to prekliate.

Začnite pridaním ďalšieho importu pre knižnicu os:

import os

Potom pridajte nasledujúce riadky, čím nahradíte predchádzajúci api.update_status z vyššie uvedeného príkladu.

cmd = '/ opt / vc / bin / vcgencmd measure_temp' line = os.popen (cmd) .readline (). strip () temp = line.split ('=') [1] .split ("'") [0] api.update_status (status = 'Moja aktuálna teplota procesora je' + temp + 'C')

Tento kód nebudem príliš vysvetľovať, pretože na tom nezáleží - spustí príkaz, ktorý uchopí teplotu, potom rozdelí výstup, aby extrahoval číslo, a tweety s vlastným správa. Nájdete kompletné vzorový kód tu.

Fotografie Tweeting webovej kamery

Teraz urobme niečo skutočne užitočné; ideme na tweet fotiek z webovej kamery. Našťastie Twython podporuje funkciu API update_status_with_media, čo všetko zjednodušuje.

Pripojte webovú kameru USB k zariadeniu a pomocou príkazu skontrolujte, či bola rozpoznaná.

ls / dev / video *

ak vidíš video0, máš šťastie. Použil som kameru Playstation 3 PSEye a fungovalo to dobre bez ďalších problémov.

Budeme tiež používať pygame knižnice na vyfotenie; hneď za existujúce dovozné výpisy pridajte tieto riadky:

importovať pygame. import pygame.camera. z importu pygame.locals * pygame.init () pygame.camera.init () cam = pygame.camera. Camera ( "/ dev / video0" (640480)) cam.start () image = cam.get_image () pygame.image.save (obrázok, 'webcam.jpg')

Stručne povedané, webovú kameru ste inicializovali v konkrétnom rozlíšení (možno budete musieť upraviť, či je to skutočne stará kamera), urobil snímku a uložil ju ako jpg. Pri každom spustení aplikácie prepíšeme tú istú webovú kameru.jpg.

Nakoniec upravte riadok update_status na čítanie:

photo = open ('webcam.jpg', 'rb') api.update_status_with_media (media = photo, status = 'Moje RPi budú tweeting images now =>')

Ak chcete, môžete samozrejme zmeniť stavový text na svoju aktuálnu teplotu procesora. Kompletný kód na tento účel príklad je tu.

Môžeš to zopakovať?

Robot Twitter je užitočný, iba ak sa spúšťa viackrát, automaticky; nechcete tam sedieť a spúšťať príkaz každú hodinu. Aby sme to dosiahli, používajme funkciu plánovania CR CR od Pi (Čo je práca CRON? Automatizujte zálohovanie Wordpressu pomocou jednoduchého skriptovania prostredia a CRONNaposledy, keď sme hovorili o zálohách Wordpress, ukázal som vám, aké neuveriteľne ľahké bolo zálohovať celú databázu a súbory, aj keď SSH, iba pomocou niekoľkých príkazov. Tentoraz sa ukážem ... Čítaj viac )

sudo crontab -e

Vložte tento riadok, aby sa spustil každú hodinu.

* / 60 * * * * python /home/pi/SillyTweeter/SillyTweeter.py

Zmeňte to na * * * * * ak chcete, aby sa spustil každú minútu, a buďte pripravení stratiť sledovateľov rýchlejšie ako účet Twitter, ktorý ich stráca rýchlo.

To je dnes. Som rád, že som prispel väčšou hlúposťou k obrovskému bohatstvu zbytočných bajtov na internete a dúfam, že aj vy! Ukážte svoje ocenenie za túto príručku tweeting to, a dajte nám vedieť, o čom bude váš komentár Twitter v komentároch tweetovať.

Obrázkový kredit: adafruit / flickr

James má bakalárske štúdium v ​​oblasti umelej inteligencie a je držiteľom certifikátu CompTIA A + a Network +. Je popredným vývojárom MakeUseOf a trávi svoj voľný čas hraním VR paintballu a spoločenských hier. Staval počítače od malička.