Co je to Twitter?
Twitter je sociální síť. Podle počtu uživatelů se jedná o 6. největší. Umožňuje vám psát krátké zprávy tzv. tweety o maximální délce 280 znaků (dřív to bylo jen 140). Pokud ale začnete Twitter používat, tak si brzy zvyknete a nebude pro vás problém se do tohoto limitu vejít s téměř jakýmkoliv sdělením. Ono je to vlastně lepší. Každý tweet má totiž díky tomuto limitu jasné sdělení.
Účet na Twitteru
Pro vytvoření Twitter bota budeme samozřejmě potřebovat uživatelský účet. Tak si nějaký založíme. Je to jednoduché.
Prosím opakujte akci zachvilku.
V prohlížeči otevřeme stránku https://twitter.com a klikneme na tlačítko Sign up.
Prosím opakujte akci zachvilku.
Vymyslíme si nějaké uživatelské jméno. Také budeme potřebovat e-mailovou adresu, na kterou přijde potvrzení.
Vyplňte formulář a pokračujte.
Prosím opakujte akci zachvilku.
Na e-mail vám přijde potvrzovací 6ti místný kód, který zadejte do formuláře.
Pak vás Twitter požádá o zadání hesla. Prosím zadejte nějaké pořádné. Hesla jako heslo123 nebo tak nejsou úplně bezpečná.
Prosím opakujte akci zachvilku.
V dalším kroku si vyberte avatara a všechny ostatní klidně přeskočte 😉.
A je to… Účet na Twitteru máte založen.
Klidně si do světa můžete poslat svůj první tweet 😃.
Prosím opakujte akci zachvilku.
Po prvním tweetu bude účet uzamčen a bude potřeba potvrdit, že nejste robot a zadat telefonní číslo. Na které bude poslán další ověřovací kód. Přepište ho do formuláře a všechno zase poběží.
V menu Settings and privacy si můžeme změnit username, které bylo automaticky vygenerováno z vašeho uživatelského jména. To pak bude součástí URL adresy vašeho profilu.
V tomto menu také můžeme odstranit číslo telefonu.
Vývojářský účet
Pro automatizované posílání tweetů budeme potřebovat přístup k API. Takže jdeme na to.
Prosím opakujte akci zachvilku.
Přistoupíte na adresu apps.twitter.com a klikněte na create a developer account.
Vyberte účet, ke kterému chcete získat vývojářský účet a pokračujte.
Prosím opakujte akci zachvilku.
Požádejte o přístup pro soukromé použití, zadejte account name a vyberte stát.
V dalším kroku budete muset Twitteru popsat váš projekt. Tohle bylo asi nejtěžší z celé žádosti o vývojářský účet. Napsat 300 znaků o projektu. Tak směle do toho 🙂.
Prosím opakujte akci zachvilku.
Dalším krokem je odsouhlasení uživatelských podmínek.
Po odsouhlasení vám twitter pošle další potvrzovací e-mail.
Prosím opakujte akci zachvilku.
Všechno je OK a můžeme si vytvořit svou první aplikaci.
Prosím opakujte akci zachvilku.
Vyplníme formulář...
Prosím opakujte akci zachvilku.
odsouhlasíme podmínky... a máme vytvořenu svou první aplikaci.
Prosím opakujte akci zachvilku.
V detailu aplikace na záložce Keys and tokens získáme API klíče, potřebné pro automatizované tweetování.
Tweetování z pythonu
K automatizaci tweetování použijeme knihovnu Twython.
Nainstalujeme ji tedy na Raspberry
sudo apt-get update
sudo apt-get install python3-twython
A můžeme začít vytvářet první program. Takový helloworld, abychom ověřili, že je všechno v pořádku a správně.
První program hellotwitter.py
vim hellotwitter.py
from twython import Twython
twitter = Twython(APP_API_KEY,
APP_API_SECRET_KEY,
APP_ACCESS_TOKEN,
APP_ACCESS_TOKEN_SECRET)
twitter.update_status(status='My first tweet using API!')
Konstanty APP_API_KEY, APP_API_SECRET_KEY, APP_ACCESS_TOKEN a APP_ACCESS_TOKEN_SECRET nahradíme za reálné klíče, které jsme získali z nové aplikace.
Program spustíme příkazem
python3 hellotwitter.py
Pokud všechno projde správně, nevypíše se do terminálu nic ale objeví se nový tweet 🙂
Pokud spustíme script znovu dostaneme chybové hlášení
Traceback (most recent call last):
File "hellotwitter.py", line 5, in <module>
twitter.update_status(status='My first tweet using API!')
File "/usr/lib/python3/dist-packages/twython/endpoints.py", line 112, in update_status
return self.post('statuses/update', params=params)
File "/usr/lib/python3/dist-packages/twython/api.py", line 268, in post
return self.request(endpoint, 'POST', params=params, version=version)
File "/usr/lib/python3/dist-packages/twython/api.py", line 258, in request
api_call=url)
File "/usr/lib/python3/dist-packages/twython/api.py", line 194, in _request
retry_after=response.headers.get('X-Rate-Limit-Reset'))
twython.exceptions.TwythonError: Twitter API returned a 403 (Forbidden), Status is a duplicate.
Tzn. Twitter nepropustí opakovaný tweet se stejným obsahem. OK. S tím se dá žít. 🙂
Závěr
Hmmm... takže. Máme vytvořený nový účet na Twitteru a máme ho provázaný s vývojářským účtem. Máme potřebné API klíče a umíme napsat program, který nám tweetne nový status.
K čemu to ale použijeme? Třeba abychom světu dávali vědět jaké počasí naměřila meteostanice. Postovali zajímavé fotky z webkamery.
Každý blog má RSS feed a tak proč nezautomatizovat i tweetování nových příspěvků?
O tom všem ale až příště 😉.