De ce puteți să vă folosiți propriul dvs. bot-Twitter și cum să îl creați în jumătate de oră +11
- 16.02.17 11:46 •
- EverydayTools •
- # 321968
- Habrahabr •
- Traducere •
- 2 •
- 8200
- la fel ca Forbes, doar mai bine.
Twitter-bot-urile pot fi mult mai mult decât spam-uri populare hashtags și abonament neobosit la utilizatori.
Luați cel puțin alerte de la botul Twisst ISS. care vă trimite un mesaj de fiecare dată când stația spațială internațională (ISS) este vizibilă de la locația dvs.
Sau boti de servicii publice cum ar fi robotul cutremurului. care trimite un tweet despre tremur cu mai mult de 5 puncte de pe scara Richter, de îndată ce se întâmplă.
Și, desigur, poem.exe. Robot, care postări poezii, precum și Haiku Accidental. care posturi retweet, scrise accidental sub forma unui haiku.
Comunitatea # 100DaysOfCode vă trimite un mesaj de salut atunci când începeți # 100DaysOfCode Challenge și câteva altele - pe măsură ce progresați prin etape.
Bot felicită utilizatorul
De asemenea, lasă răspunsuri încurajatoare la tweets cu hashtag # 100DaysOfCode, dacă recunoaște emotiile negative în ele (de exemplu, supărare).
Botul citește emoțiile
În interviuri, îmi este adesea întrebat: "Ce îți dau munca în domeniul IT?" Întotdeauna răspund: "Îmi place să automatizez sarcinile repetitive pentru a economisi timp, ca să mă concentrez asupra altor lucruri. Sunt încântat că m-am salvat o vreme.
Dacă vorbesc despre botul meu @ScottDevTweets, îl folosesc mai ales pentru a începe o conversație cu abonații mei. Deci, botul poate să înceapă conversația și eu o iau.
Având în vedere tot ceea ce sa spus, botul este etic exact în măsura în care persoana care a programat-o.
Dacă aveți vreo îndoială cu privire la etica botului pe care l-ați creat, uitați-vă la secțiunea corespunzătoare de pe botwiki.
Deci, sunteți gata să începeți? Atunci să mergem!
Cum de a crea un bot de Twitter într-o jumătate de oră
Pentru a crea un bot pe Twitter, vom folosi biblioteca twit. După finalizarea lucrării, el va fi leneș și retweet ceea ce specificați și, de asemenea, să poată răspunde cititorilor dvs., alegând răspunsurile din șabloanele pregătite.
Pasul 1: configurați o aplicație Twitter
Creați un nou cont Twitter sau utilizați unul existent pentru a crea o nouă aplicație Twitter.
După aceasta, veți fi în secțiunea Managementul aplicațiilor, unde va trebui să vă amintiți cheile. Cheia dvs. de consum (cheie API) și secretul consumatorilor (API Secret) ar trebui să fie deja disponibile.
Va trebui să mergeți în partea de jos a paginii și să faceți clic pe butonul Creați-mi butonul de acces pentru a obține accesul la Token și accesul la Token Secret. Amintiți-vă - când setați botul, veți avea nevoie de toate cele patru.
Pasul 2: Configurați mediul de dezvoltare
Aici voi spune un lucru: utilizați Cloud9 - cu unul din mediile Node.js gata, întregul proces va dura câteva minute.
Rețineți că, dacă decideți să utilizați ID-ul Heroku și / sau Cloud9 atunci când creați botul, după cum urmează, în funcție de regiunea de reședință, puteți solicita un număr de card de credit.
În arborele proiectului, ștergeți fișierele de proiect exemplu: client, package.json, README.md și server.js. Nu aveți nevoie de ele, dar le puteți lăsa dacă doriți.
În noul mediu Node.js c9, accesați terminalul și introduceți:
Arborele de mediu al proiectului ar trebui să arate astfel:
Înainte de a configura botul, trebuie să stabilim dependențe. Mergeți în dosarul proiectului cu comanda cd tw *, aceasta vă va muta
Din terminal introduceți:
Aceasta va instala toate dependențele listate în fișierul package.json. Dacă aveți erori, vă sugerăm să setați dependențele din fișierul package.json în aceeași comandă, adăugând numele pachetului la sfârșit.
Iată un exemplu de dependențe în fișierul package.json:
Dar echipa pentru a le instala toate:
Dacă primiți mesaje de avertizare, de exemplu, npm WARN package.json [email protected] Niciun câmp de repository - este în regulă, botul nu-l întrerupe, îl puteți ignora.
Acum puteți configura botul. Introduceți de la terminal:
Acum trebuie să adăugați cheile Twitter în fișierul .env. Doar introduceți-le în câmpurile corespunzătoare și salvați fișierul.
În ceea ce privește SENTIMENT_KEY, puteți obține o nouă cheie API din linkul: market.mashape.com/vivekn/sentiment-3 Cheia este în câmpul CERERE.
Adăugați această cheie în fișierul .env împreună cu toate celelalte.
Acum trebuie să introduceți numele de Twitter-bot și setați intervalul în câteva minute, cu care ar trebui să lăsați un husky și repost.
Notă: nici o valoare în fișierul .env nu este înconjurată de citate.
Apoi, puteți adăuga cuvinte cheie în fișierul strings.js pe care doriți să îl căutați, precum și subcheile.
Adăugați liste de interogări și subdotări. De asemenea, puteți actualiza solicitările blocate dacă doriți să puneți ceva pe lista neagră
Când introduceți o listă de subcheiri, asigurați-vă că lăsați un spațiu înaintea ei. De ce? Pentru a se împerechea cu 'node.js', cererea 'tip la îndemână' ia forma node.js sfat util, nu tip node.jshandy.
În acest sens, teoretic, totul. Mergeți la terminal și introduceți npm start. Ar trebui să obțineți această ieșire:
Verificați-vă contul de Twitter:
Pasul # 3: personalizați Heroku
Mare, acum avem un bot pe care îl putem testa în mediul nostru de dezvoltare. Dar nu poți lăsa asta acolo - trebuie să faci un demo pe Heroku.
Dacă nu ați făcut deja acest lucru, creați un cont pe Heroku. apoi selectați Creați o aplicație nouă din lista derulantă de mai sus și din partea dreaptă a tabloului de bord. În ecranul următor, introduceți numele aplicației, dacă doriți, apoi faceți clic pe butonul Creare aplicație.
Veți fi prezentat cu tabloul de bord al aplicației și instrucțiuni pentru metoda de-file.
Numele aplicației trebuie să fie afișată în partea superioară a tabloului de bord - aceasta este ceea ce veți avea nevoie atunci când introduceți sistemul Heroku folosind interfața de comandă Heroku, pe care o vom folosi pentru demo-ul aplicației.
În primul rând, vom implementa demo-ul prin interfața de comandă a liniei de comandă (CLI). Introduceți Heroku folosind terminalul c9 (ar trebui instalat implicit).
Introduceți acreditările:
Faceți o demonstrație a aplicației dvs.:
Iată rezultatul de construire pe care ar trebui să-l primiți în terminal:
Acum verificați ieșirea cu comanda:
A funcționat? Se răcește!
Setarea variabilelor Heroku
Acum, că botul nostru pe Heroku, trebuie să adăugați variabile de mediu pentru a stoca cheile Twitter. Faptul este că fișierul .env în care sunt scrise este listat, printre altele, în fișierul .gitignore, care trimite o comandă către git să nu încarce fișierele listate la Heroku.
Deci, dacă în viitor vrem să introducem codul în GitHub, nu trebuie să ne facem griji că cheile noastre vor fi disponibile public împreună cu fișierul .env - acesta va fi automat exclus.
Tot ce este necesar de la dvs. este să mergeți la consola aplicației dvs. pe Heroku, să selectați secțiunea Setări și să adăugați cheile Twitter din fișierul .env. Apoi faceți clic pe butonul Reveal Config Vars și adăugați variabilele cu valorile corespunzătoare.
După setarea variabilelor în Heroku, accesați config.js în proiectul curent. Va trebui să ștergeți această linie:
Acum, totul este gata să-l dezamăgească pe Heroku. Comenzile din consola ar trebui să arate cam așa:
Apoi, puteți verifica jurnalele din Heroku folosind comanda
Efectuată: aveți un bot care își va îndeplini funcțiile pentru totdeauna. Ei bine, sau până când decideți să modificați criteriile de căutare.
Implementați Heroku cu GitHub
De asemenea, puteți implementa implementarea aplicației conectându-vă la GitHub și deportând automat la Heroku de fiecare dată când sucursala dvs. "master" este actualizată la GitHub. Totul este destul de transparent aici.
Depanarea în Heroku
Ce "rupe"?
În general, am constatat că uneori un lucrător este definit ca o rețea web, ceea ce duce la accident. Încercați să modificați setările pentru lucrători astfel:
Dacă nu ajută, accesați fila Resurse și redați-le cu setările de acolo. După cum am aflat, dacă mutați glisoarele pe web, heroku și lucrător, de regulă, totul revine la normal. Linia de jos este că trebuie să activați Dyno lucrător - Eroare R10 (Timeout Boot) apare ca urmare a faptului că sistemul încearcă să folosească în loc de alte resurse.
Iată o altă comandă utilă pentru Heroku:
În mod implicit, puteți lovi numai sucursala dvs. principală atunci când lucrați cu o ramură de dezvoltare (de exemplu, dev). Dacă doriți să testați pe Heroku, puteți folosi comanda:
Dacă doriți să adăugați toate acestea la depozitul dvs. pe GitHub, dar nu vă simțiți de partajat cheile cu lumea - trebuie doar să opriți urmărirea fișierului .env. Introduceți următoarea comandă de la terminal:
Echipele pe care le-am folosit cel mai mult pe care le-am adus aici, în esență.
concluzie
Acum, botul tău de Twitter rulează. În viitor, puteți continua să lucrați cu acesta și să schimbați setările.
mulțumesc
Pentru inspirație, trebuie să-i mulțumesc lui @amanhimself și a postărilor lui despre crearea propriului meu bot de Twitter.