Bagaimana cara tweet menggunakan terminal?

8

Saya ingin tweet pesan menggunakan terminal.

Saya mencoba sesuatu seperti:

curl -u 'TwitterUsername':'TwitterPassword' -d status=”Your Message Here https://twitter.com/statuses/update.xml

tapi sepertinya ini tidak berfungsi lagi.

Saya mendapatkan kesalahan seperti ini:

<?xml version="1.0" encoding="UTF-8"?>
    <errors>
    <error code="53">Basic authentication is not supported</error>
</errors>

Jadi, bagaimana kita bisa tweet dari terminal?

PS .: Motivasi saya untuk ini adalah karena saya sering menggunakan terminal Yakuake, dan akan luar biasa untuk tweet dari sana.

GarouDan
sumber

Jawaban:

10

Pesan kesalahan ini karena Twitter membutuhkan OAuth untuk otentikasi . Lihatlah TTYtter jika Anda tidak keberatan dengan aplikasi Perl:

Tidaaaak, bukan klien Twitter lain! Ya, klien Twitter lain. Perbedaannya di sini adalah bahwa Anda berurusan dengan klien baris perintah Perl yang multi-fungsional, sepenuhnya 100%.

  • Dalam mode interaktif, ini adalah klien yang sepenuhnya interaktif dengan pembaruan dan perintah latar belakang asinkron. Gunakan melalui telnet, ssh atau bahkan terminal dummy. Mendukung Streaming API, warna ANSI, UTF-8, tagar dan Pencarian Twitter!
  • Berfungsi dalam lingkungan favorit Anda: gunakan pustaka readline yang kompatibel (seperti Term dipesan lebih dahulu dari kami sendiri :: ReadLine :: TTYtter), atau modifikasi metode input dan prompt untuk banyak manajer jendela dan sesi yang populer. Atau jangan: pengeditan dasar dan fitur manajemen layar bawaan.
  • Dari baris perintah, gunakan untuk memperbarui Twitter Anda di skrip shell, dari cron, dan sebagainya.
  • Keamanan: Mendukung Twitter OAuth dan HTTP Basic Authentication, dan SSL jika didukung oleh agen pengguna Anda.
  • Dukungan pemberitahuan dengan Growl dan libnotify (dan dapat diperpanjang untuk orang lain melalui API).
  • Dukungan geolokasi: serahkan koordinat GPS Anda ke TTYtter untuk aplikasi apa pun.
  • Mendaftar dukungan, termasuk pembuatan dan modifikasi cepat, dan menggabungkan daftar dengan timeline Anda sebagai "timeline kustom."
  • Mendukung API yang mirip Twitter seperti StatusNet dan Identi.ca.
  • Mendukung garis waktu standar dan secara otomatis mengambil pesan langsung, dan secara opsional membalas / menyebutkan, dan menjalankan kueri terhadap API Pencarian dan menggabungkannya ke dalam garis waktu Anda juga.
  • Dukungan re-tweet baru dan lama.
  • Tulis dan gunakan ekstensi khusus Anda sendiri!
  • Jalankan terlepas dalam mode -daemon, dan buat bot Twitter Anda sendiri!

TTYtter telah ditinggalkan. Pengembangan sekarang berlanjut di fork, oysttyer .

Renan
sumber
2
+1 untuk TTYtter. Saya bukan penggemar berat Twitter, tapi itu jelas merupakan salah satu klien yang lebih baik. Plugin Irssi tidak terlalu bagus, dibandingkan dengan TTYtter.
polemon
6

Coba t . Sangat kuat, mudah digunakan dan ditulis dalam Ruby.

Misalnya, Anda dapat tweet langsung dari terminal, dengan menjalankan:

t update "I'm tweeting from the command line."
Alex Chamberlain
sumber
5

Pembaruan 2016

Ada proyek yang disebut Twurl - ikal yang diaktifkan OAuth untuk Twitter API:

Twurl seperti ikal, tetapi dirancang khusus untuk API Twitter. Ia tahu cara memberikan token akses ke aplikasi klien untuk pengguna tertentu dan kemudian menandatangani semua permintaan dengan token akses itu.

Ini juga memberikan kemudahan pengembangan dan debugging lainnya seperti mendefinisikan alias untuk permintaan umum, serta dukungan untuk beberapa token akses untuk dengan mudah beralih antara aplikasi klien yang berbeda dan akun Twitter.

Alih-alih ini dari pertanyaan:

curl -d status="Your Message Here" https://twitter.com/statuses/update.xml

Anda menggunakan sesuatu seperti ini:

twurl -d status="Your Message Here" /1.1/statuses/update.json

setelah Anda mengotorisasi diri Anda terlebih dahulu seperti yang dijelaskan dalam readme .

(perhatikan bahwa Anda tidak harus menggunakan protokol dan nama host di URL seperti yang Anda lakukan dengan curl)

Program ini awalnya ditulis oleh Marcel Molina yang bekerja di Twitter pada waktu itu dan sekarang merupakan proyek Twitter resmi di GitHub.

Banyak orang bertanya secara khusus bagaimana menggunakan curl untuk menggunakan Twitter API dan twurl mungkin yang paling dekat dengan curl seperti yang Anda dapatkan hari ini.

rsp
sumber
2

Coba twidge.

sudo apt install twidge
twidge setup
twidge update "Trying tweeting from linux command line - twidge."
Ondra Žižka
sumber
1
FYI versi twidge di repo lama (Debian Wheezy) menggunakan API Twitter v1 yang sekarang sudah usang. Versi baru dari twidge berfungsi dengan baik.
cherdt
1

Lihatlah Rainbow Stream - pintar / cantik dan ditulis dengan Python. Ini menyediakan cangkang pelangi yang bisa mulai dengan

$ rainbowstream

dan di dalam aplikasi, memperbarui status cukup mudah

[@yourTwitterName]: t tweeting from #rainbowstream
DTVD
sumber
Perangkat Lunak yang Menarik. Tapi bisakah Anda memberikan contoh cara tweet langsung dari konsol? Karena pertanyaannya adalah tentang tweeting langsung dari konsol.
Raphael Ahrens
1

Saya telah membuat klien Twitter yang dapat tweet dari baris perintah, seperti yang disebutkan di Rekomendasi Perangkat Lunak .

Untuk tweet pesan

java -jar EmailTweetor.jar tweet hello.txt

atau

echo "Hello" | java -jar EmailTweetor.jar tweet

Untuk berkicau dengan gambar:

java -jar EmailTweetor.jar tweet hello.txt image.jpg

EmailTweetor untuk Desktop

Komputer tempat perintah diluncurkan harus memiliki OpenJDK atau Oracle Java v1.8 atau yang lebih baru. JAR juga membutuhkan otorisasi satu kali dengan Twitter.

Somberi
sumber