Fotoğraf Tweeti Nasıl Oluşturulur Twitter Botu Ahududu Pi ve Node.js ile

  • Brian Curtis
  • 0
  • 4197
  • 638
reklâm

Sadece diğer insanlar için, Twitter'ı daha kullanışlı hale getirmenin bir yolunu mu arıyorsunuz? Bunun bir yolu, görüntüleri kullanışlı açıklamalarla tweetleyen otomatik bir Twitter botu oluşturmaktır. Bunu manuel olarak yapabilirdiniz… ya da Node.js ile inşa edebilir ve bir Raspberry Pi'de barındırabilirsiniz. Nasıl olduğunu öğrenmek için okumaya devam edin.

Neden bir Twitter botu inşa et?

Daha önce hiç Twitter’da bulunduysanız ve fotoğraf veya gerçekleri ya da çizgi filmleri, vb. Aynı konuyla ilgilenen bir insan kitlesi oluşturmanın harika bir yolu.

Fakat retweetlerin ve takiplerin ötesinde başka bir sebep daha var. Bir Twitter botu oluşturmak size bazı programlama becerilerini öğretecektir. Daha önce Python ile temel bir Twitter botu nasıl kurulduğuna baktık, bir Ahududu Pi Twitter Botu Nasıl Yapılır Ahududu Pi Heyeti Nasıl Yapılır Twitter Bot Twitter, hiçbir şey söylemeyecek insanlardan kısa mesajların dünyadaki en büyük deposudur - ve şimdi siz Bu epik projeye Raspberry tarafından desteklenen otomatik bir Twitter botuyla da katkıda bulunabilirsiniz….

Bu projede, Ahode Pi'ye fotoğraf tweetleme botu yapmak için Node.js kullanacağız. Fotoğraflar, Birinci Dünya Savaşı’nın fotoğrafları, kısa bir cümle ve nitelik ile birlikte olacaktır. Bu bilgiler bir dizide, temel bir veritabanında depolanacaktır. [MakeUseOf Açıklar] Peki, Yine de Bir Veritabanı Nedir? [MakeUseOf Açıklar] Bir programcı veya teknoloji meraklısı için, bir veritabanı kavramı gerçekten verilen için alınabilecek bir şeydir. Bununla birlikte, birçok insan için bir veri tabanı kavramı biraz yabancıdır… .

Başlayın: Veritabanınızı Oluşturun

Bir tweet botu oluşturmak istiyorsanız, paylaşmak istediğiniz görüntüleri toplayarak başlamanız gerekir. Bunlar kendi resimleriniz veya bir Creative Commons veya başka bir açık kaynak lisansı altında edindiğiniz bilgiler olmalıdır..

Resimlerle birlikte gitmek istediğiniz özelliklere ve diğer bilgilere de dikkat etmelisiniz. Bot çalışmaya başladıktan sonra bu bilgilere geri döneceğiz..

Raspbian'da Node.js dosyasını kurun

Node.js. dosyasını yükleyerek başlayın. Ahududu bir pi zaten yüklü ve çalışıyor, Raspbian yüklü olan bir Ahududu Pi bir işletim sistemi nasıl kurulur Ahududu bir Pi bir işletim sistemi nasıl kurulur Ahududu Pi bir işletim sistemi nasıl kurulur ve mükemmel nasıl klon hızlı felaket kurtarma için kurulum. . Bu proje için bir Ahududu Pi 2 veya daha yenisini öneririz; Proje Ahududu Pi 3 B + üzerinde test edildi Yeni Ahududu Pi 3 B + Modeline İhtiyacınız Varsa Nasıl Karar Verilir? Yeni Ahududu Pi 3 B + Modeline İhtiyacınız Varsa Nasıl Karar Verilir? Yeni Ahududu Pi 3 B + piyasaya sürüldü. Ne kadar maliyeti var, ne kadar zor şartnamesi var ve mevcut projelerinizi geliştirecek mi? Cevaplarımız var. .

Terminalde (veya SSH VNC, SSH ve HDMI ile: Ahududu Pi'nizi Görmek İçin Üç Seçenek VNC, SSH ve HDMI: Ahududu Pi'nizi Görmek İçin Üç Seçenek Ahududu Pi dikkate değer bir küçük bilgisayardır, ancak ayarlanması zaman alabilir cihazınızı bağlayın ve monitörünüze bağlayın.), sistem paket listesini güncelleyin ve en son sürüme yükseltin:

sudo apt-get güncelleme sudo apt-get dist yükseltme

Ekrandaki bilgi istemini takip edin ve Pi güncellemelerinizi beklerken bekleyin. İşiniz bittiğinde, yeniden

sudo yeniden başlatma

İşiniz bittiğinde, Node.js dosyasını indirmek için curl kullanın:

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -

Sonra, ile yükleyin

sudo apt-get install -y düğümü

Hepsi tamamlandığında, yazılımın doğru yüklendiğinden emin olmak için bir kontrol yapın. En kolay sürüm numarasını kontrol etmektir:

-v düğümü

Yanıt v8.11.3 (veya daha yüksek) gibi bir şey olmalıdır. Böyle bir şey görürseniz, Node.js'nin kullanıma hazır olduğundan emin olabilirsiniz.

Twitter Botunuzu Oluşturun

Bir sonraki aşama botu oluşturacak olan kodu girmektir. Bir dizin oluşturarak başlayın:

mkdir twitterbot

Ardından, botunuz için yeni dizine değiştirin:

cd twitterbot

Burada server.js adlı bir dosya oluşturun.

sudo nano server.js

Bu dosyada, tek bir satır girin:

console.log ('Ben bir Twitter botuyum!');

Basın Ctrl + X kaydetmek ve çıkmak için betiği çalıştırın:

'/home/pi/twitterbot/server.js' düğümü

Bu ifadeyi döndürmelidir “Ben bir Twitter botuyum!”. Bunun işe yaradığını onayladığın için şimdi Twit kütüphanesini yükleme zamanı npm ( Düğüm Paket Yöneticisi). Bunun girerek yüklendiğinden emin olun:

npm -v

Yine, gösterilen bir sürüm numarası görmelisiniz.

Şununla izleyin:

npm giriş

Bu, oluşturduğunuz Node.js uygulaması hakkında bilgi istemenizle başlar. Varsayılan seçenekler görüntülenir (bunun gibi), böylece onları kabul etmek için Enter düğmesine basmanız yeterlidir. Siz de kendi detaylarınızı girmeyi seçebilirsiniz. Bu yapılandırma sona erdiğinde, detayları ile onaylamanız istenir. “Evet”.

Bir sonraki aşama, Twit modülünü npm'den yüklemek..

npm twit yüklemek - save

Dosyalar node_modules alt dizinine yüklenirken bekleyin. Tamamlandıktan sonra, server.js dosyasını nano'da tekrar açın.

sudo nano server.js

Burada, daha önce girdiğiniz komutu silin, bunun yerine:

var fs = zorunlu ('fs'), yol = zorunlu ('yol'), Twit = zorunlu ('twit'), config = zorunlu (path.join (__ dirname, 'config.js'));

Kaydet ve eskisi gibi çık.

Twitter Uygulaması Oluştur

Çalışan bir Twitter botu oluşturmak için bir Twitter uygulaması oluşturmanız gerekir. Bu, önce yeni bir Twitter hesabına kaydolmanızı gerektiren basit bir işlemdir. Bunun ayrıca hesabı doğrulamak için bir telefon numarası gerektirdiğini ve bu işlem yapıldıktan sonra uygulamayı oluşturmak için developer.twitter.com adresine gidin..

Bir geliştirici hesabınız yoksa, gerekli miktarda form doldurma olduğu için bu işlem biraz zaman alabilir. Bu, Twitter’ın spam’den kaçınmak için attığı bir adım, bu yüzden zaman ayırın ve sorulara doğru cevap verin.

Click Bir Uygulama Oluştur, ve detayları istediğiniz gibi ekleyin. Yazma sırasında, geliştirici sistem elden geçiriliyor, bu yüzden birkaç gün beklemeniz gerekebilir (ve bazı ek soruları cevaplamanız gerekebilir)..

Ardından, Anahtarlar ve Jetonlar sekme ve altı İzinler bul Erişim izni ve ayarlandığından emin olun Oku ve yaz (Kullanım Düzenle eğer değilse). Sonra Anahtarlar ve Belirteçler'e geçin ve aşağıdakilere dikkat edin:

  • Tüketici anahtarı
  • tüketici mahremiyeti

Erişim belirteci altında, Tamam'ı tıklatın. yaratmak üretmek:

  • Erişim Simgesi
  • Erişim Simgesi Sırrı

Bunlar, botun Twitter hesabınıza erişmesini sağlamak için ihtiyaç duyacağınız API anahtarlarıdır.

Komut satırına geri döndüğünüzde nano'da config.js oluşturun:

sudo nano config.js

Aşağıdakileri ekleyin

var config = consumer_key: 'XXXXX', consumer_secret: 'XXXXX', access_token: 'XXXXX', access_token_secret: 'XXXXX' module.exports = config;

'XXXXX' yazdığı yerde, ilgili API anahtar ayrıntılarınızı girin.

Kaydet ve çık, ardından server.js dosyasını aç.

sudo nano server.js

Burada, aşağıdaki satırları dosyanın sonuna ekleyin:

var T = yeni Twit (config); T.post ('durum / güncelleme', status: 'İlk tweetim!', Function (err, data, response) console.log (data));

Bu gibi görünmeli:

Yine, kaydedin ve çıkın, sonra komut satırına girin

server.js düğümü

Sonuçları görmek için tarayıcıda Twitter hesabınızı açın:

Botun tweet attığını onayladın, bu yüzden yapması gereken bir şey verme zamanı geldi.!

Görüntüler Klasörünüzü Oluşturun

Fotoğrafları tweetlemek için topladığınız görüntüleri bir klasöre kopyalayın (genellikle Görüntüler). Bir düzine kadar başla.

Ardından, server.js belgesine dönün:

sudo nano server.js

Burada, tweet'i gönderen kodu kaldırın, T.post ('statuses / update') başından itibaren satır.

Ardından, bunu adlandırılan bir işlevle değiştirin. random_from_array. Bu, görüntüler klasöründen rastgele bir görüntü seçer.

function random_from_array (images) return images [Math.floor (Math.random () * images.length)]; 

Bunu yaptıktan sonra ikinci bir işlev eklemeniz gerekir., upload_random_image:

fonksiyon upload_random_image (images) console.log ('Bir resim açılıyor…'); var image_path = path.join (__ dirname, '/ images /' + random_from_array (resimler)), b64content = fs.readFileSync (image_path, encoding: 'base64'); console.log ('Resim yükleniyor…'); T.post ('media / upload', media_data: b64content, function (err, veri, yanıt) if (err) console.log ('ERROR:'); console.log (err); else  console.log ('Resim yüklendi!'); console.log ('Şimdi tweetliyor…'); T.post ('durumları / güncelleme', media_ids: new Array (data.media_id_string), function (err, data , response) if (err) console.log ('ERROR:'); console.log (err); else console.log ('Bir resim yayınlandı!'););); 

Bu işlev, görüntüler klasöründen rastgele bir görüntü seçer ve seçildikten sonra media / upload API'sini kullanarak Twitter'a yüklenir.

Sonra, aşağıdaki kodu ekleyin. Bu, görüntüler dizinini bulur ve her 60 saniyede bir rasgele olarak göndererek bir görüntü alır. Şekil 60000 ile kodda gösterilen bu zamanlamayı düzenleyebilirsiniz (ve gerekir). Daha uzun boşluklar önerilir.

 setInterval (function () upload_random_image (images);, 60000); );

Bunu ile kaydet Ctrl + X, sonra kaydetmek için Evet. (Bu projenin tam kodunu GitHub'ta bulabilirsiniz).

Tek bir kullanımı server.js düğümü daha sonra komut, fotoğrafları tweetlemeye başlamalarını ister! (Gönderileri sonlandırmanız gerekirse, tuşuna basın. Ctrl + Z server.js betiğini iptal etmek için.)

Fotoğraf Tweetlerine Metin Ekleme

Resimlerinize metin eklemeniz gerekirse, bu bir dizi kullanılarak yapılabilir. Dizi, görüntülerin dosya adlarına atıfta bulunacak ve eklenmesi gereken metni listeleyecektir. Örneğin, almadığınız resimlere özellik ekleyebilirsiniz. Veya bazı gerçekleri veya bir teklifi ekleyebilirsiniz.

İmages.js oluşturarak başlayın

sudo nano images.js

İşte, aşağıdaki kodu ekleyin. Bu, iki eleman, dosya ve kaynak içeren bir dizidir. Bunlar görüntünün dosya adını ve niteliği (genellikle bir URL) tutar..

var images = [dosya: 'image0001.png', kaynak: 'http://www.example.com/image0001.png', dosya: 'image0002.png', kaynak: 'http: // www. example.com/image0002.png ',]

Her görüntü için gerektiği kadar tekrarlayın, ardından images.js dosyasını aşağıdaki şekilde bitirin:

module.exports = görüntüler;

Dosyayı kaydedip kapatın, ardından server.js dosyasını tekrar açın ve bunu değişkenler listesine ekleyin:

images = request (path.join (__ dirname, 'images.js'));

Kaydet ve çık, ardından Twitter botunu yeniden başlat server.js düğümü bir kez daha komut ver.

Ayrıca kullanabilirsiniz “kaynak” Resmin arka planını açıklayan bir kısım metni içeren alan. Bu URL’ye eklenebilir.

İlk Twitter Botunuz, Yeniden Kullanıma Hazır!

Şimdiye dek, verdiğiniz konuyla ilgili fotoğrafları, gerçekleri ve öznitelikleri paylaşan, otomatik olarak çalışan bir Twitter botu hazır ve çalışıyor olmalıdır..

Özetlemek gerekirse, süreç:

  • Fotoğraflarını topla
  • Node.js dosyasını kurun
  • Twitter botunuzu oluşturun
  • Twitter'da geliştirici durumu için başvur
  • Twitter uygulaması oluştur
  • Bir özellik dizisi ekle
  • Tweetlemeye başla!

Belki de bu konuda en iyi şey, kodun kelimenin tam anlamıyla herhangi bir konuda fotoğraf, gerçek ve niteliklerini tweetlemek için kullanılabileceğidir..

Benzer bir kurulumla başka hangi botları çalıştırabileceğinizi bilmek ister misiniz? Raspberry Pi 10 için en iyi Twitter bot projeleri listemize göz atın Raspberry Pi 10 için en iyi Twitter Bot Projeleri Raspberry Pi için en iyi Twitter Bot Projeleri !




Henüz no comments

Modern teknoloji hakkında basit ve uygun fiyatlı.
Modern teknoloji dünyasında rehberiniz. Her gün bizi çevreleyen teknolojileri ve araçları nasıl kullanacağınızı ve Internet'te ilginç şeyleri nasıl keşfedeceğinizi öğrenin.