0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

通過Twython在Raspberry Pi上發(fā)推文?。ǖ?部分)

劉玉蘭 ? 來源:DevicePlus ? 作者:DevicePlus ? 2023-02-24 17:27 ? 次閱讀

這篇文章來源于DevicePlus.com英語網(wǎng)站的翻譯稿。

pYYBAGPzHomALroqAAGdnxFI90o319.png

原文最初由deviceplus.jp發(fā)布,本文為英譯版。
今天,我將介紹如何通過“Twython”實(shí)現(xiàn)Raspberry Pi與Twitter(推特)之間的連接。我過去曾經(jīng)嘗試過連接Twitter,但是比想像的要難!這次,我們將按照Raspberry Pi 官方網(wǎng)站文檔里的方法來進(jìn)行。本文中,我們將使用2017年11月29日發(fā)布的“Raspbian Stretch with desktop”操作系統(tǒng)和“Raspberry Pi2Model B”。

什么是Twython?

Twython 官方網(wǎng)站
Twython – Twython 3.6.0 文檔
用于TwitterAPI的積極維護(hù)的純Python裝飾器。支持常規(guī)和流式Twitter APIs。
「Twython」是一個用于Twitter API的Python庫。
Twitter 庫 — Twitter 開發(fā)者
twython by @ryanmcgrath—用于Twitter API的積極維護(hù)的純Python裝飾器。支持常規(guī)和流式Twitter APIs。支持所有v1.1端點(diǎn),包括動態(tài)函數(shù),因此用戶可以使用庫中尚未包含的端點(diǎn)。
官方Twitter中也介紹了這一點(diǎn)。

安裝 Twython

poYBAGPzHoyAUehAAAGdzI_fzd8848.png圖 1

Twitter API 入門簡介
現(xiàn)在我們繼續(xù)。當(dāng)您想切換頁面時,請點(diǎn)擊左側(cè)菜單,因?yàn)閁RL不可以更改。
正數(shù)第二個選項(xiàng),“您需要什么”,里面描述了如何安裝“用于Python 3的Twython”。
像往常一樣,我們先對系統(tǒng)進(jìn)行更新。

sudo apt-get update

sudo apt-get upgrade

接下來,輸入“Twython”安裝指令。

sudo pip3 install twython

之后將顯示如下信息

poYBAGPzHo6AUB0jAABMaxffRJA318.png圖 2

輸入“pip3 list”指令,顯示內(nèi)容中有“twython (3.4.0)”,證明安裝成功。
最后,執(zhí)行一個確認(rèn)指令,檢查所需要的內(nèi)容是否已具備。

python3 -c "import twython"

pYYBAGPzHpCAICBjAABOEXN7tKQ739.png圖 3

如果沒有出現(xiàn)錯誤信息,就表示準(zhǔn)備工作已經(jīng)完成!
在頁面末尾,有一條警告信息指出使用Twitter API需要已驗(yàn)證的電話號碼。如果您沒有注冊電話號碼,將無法在應(yīng)用程序上完成Twitter的注冊,因此請務(wù)必先完成電話號碼的注冊。

注冊一個Twitter賬戶

第三條中的“創(chuàng)建一個Twitter賬戶”詳細(xì)介紹了如何創(chuàng)建Twitter賬戶。對于第一次注冊的用戶,請參考Twitter 官方網(wǎng)站上的信息對賬戶進(jìn)行設(shè)置。如果使用的是已有賬戶,請轉(zhuǎn)至第四頁。
“創(chuàng)建一個Twitter應(yīng)用程序”中詳細(xì)說明了如何創(chuàng)建一個Twitter應(yīng)用程序。
在Twitter 應(yīng)用程序管理頁面中登錄Twitter賬戶,并點(diǎn)擊“創(chuàng)建一個新的應(yīng)用程序”按鈕。

poYBAGPzHpOAa2EDAAF9tOhUQHw041.png圖 4

接下來,輸入“名稱”、“描述”和“網(wǎng)址”。在“網(wǎng)址”輸入相應(yīng)內(nèi)容是必要的,但是因?yàn)槲也粫_此賬號,所以在這里我輸入了自己的Twitter URL。同意條款和條約后,點(diǎn)擊“創(chuàng)建您的Twitter應(yīng)用程序”按鈕。

pYYBAGPzHpWASwo6AABaOXBywaQ319.png圖 5

如果您沒有為您的Twitter賬戶注冊電話號碼,將會出現(xiàn)以上錯誤信息。
發(fā)生這種情況時,請參閱以下文件來注冊電話號碼。
如何為您的賬戶注冊電話號碼

poYBAGPzHpiAfpyKAAEz49zo488364.png圖 6

完成注冊后,點(diǎn)擊“密鑰和訪問令牌”按鈕。
“消費(fèi)者密鑰(API密鑰)”和“消費(fèi)者秘密(API秘密)”是使用Twython進(jìn)行相關(guān)驗(yàn)證時需要的值。
首先,我們來確認(rèn)一下訪問級別。
如果您將其設(shè)置為“可讀和可寫”,那就沒問題了。我將該設(shè)定作為默認(rèn)設(shè)置,但是您可以通過點(diǎn)擊“修改應(yīng)用程序權(quán)限”鏈接隨時對其進(jìn)行更改。
接下來是創(chuàng)建訪問令牌。點(diǎn)擊屏幕底部的“創(chuàng)建我的訪問令牌”按鈕。

pYYBAGPzHpyAak9NAABowvsGs5I717.png圖 7

在“您的訪問令牌”下,將顯示“訪問令牌”和“訪問令牌秘密”。與之前的“消費(fèi)者密鑰(API密鑰)”和“消費(fèi)者秘密(API秘密)”相同,使用Twython時會用到這些值。

設(shè)置日期/時間

第五頁中的“設(shè)置系統(tǒng)日期/時間”是設(shè)置日期和時間的有關(guān)信息,所以我們在Raspberry Pi的設(shè)置中對日期和時間進(jìn)行調(diào)整。

在Twitter上發(fā)帖!

進(jìn)行到第六頁中“從Python發(fā)送一條推文”這一步,我們終于有了寫程序的機(jī)會!從菜單中選擇“Programming(編程)”—“Python 3(IDEL)”并打開編輯器。

pYYBAGPzHp-ALL2UAACJ0NFtqE0375.png圖 8

最初顯示的內(nèi)容如上所示,但是如果一直這樣保持不變,那么將會依次逐行執(zhí)行所有的指令,所以我們來點(diǎn)擊[File] – [New File]創(chuàng)建一個新的程序。按照下圖順序依次寫入“Consumer Key (API Key)”、“Consumer Secret (API Secret)”、“Access Token”、“Access Token Secret”,并將其儲存在名為“auth.py”的文件中。

01
02 consumer_key = 'ABCDEFGHIJKLKMNOPQRSTUVWXYZ'
03
04 consumer_secret = '1234567890ABCDEFGHIJKLMNOPQRSTUVXYZ'
   access_token = 'ZYXWVUTSRQPONMLKJIHFEDCBA'
   access_token_secret = '0987654321ZYXWVUTSRQPONMLKJIHFEDCBA'

寫Python程序的時候需要注意,前導(dǎo)空格和制表符所導(dǎo)致的縮進(jìn)會對程序產(chǎn)生影響。
(縮進(jìn)字符相同的行會被視為塊)
我將該文件保存在“/home/pi/”目錄中。我想當(dāng)您以pi用戶的身份登錄時,該目錄會被認(rèn)為是默認(rèn)保存路徑。接下來,我們將會輸入用于Twitter發(fā)帖的程序。再一次點(diǎn)擊[File]-[New File]創(chuàng)建一個新的文件,并寫入程序,如下所示。然后,將文件命名為“twitter.py”并保存到與“auth.py”相同的路徑中。

01
02  from twython import Twython
03
04  from auth import (
05
06     consumer_key,
07
08     consumer_secret,
09
10     access_token,
11
12     access_token_secret
13  )
14
15
16  twitter = Twython(
17
18     consumer_key,
       consumer_secret,
       access_token,
       access_token_secret
)
message = "Hello world!"
twitter.update_status(status=message)
print("Tweeted: %s" % message)

在“twitter.py”窗口處于活動狀態(tài)時,按下“F5”鍵或執(zhí)行頂部菜單中的“Run -> Run Module”。

pYYBAGPzHqGAW-muAACsk4_sfsc476.png圖 9

然后執(zhí)行屏幕應(yīng)顯示 「Tweeted:Hello world!」

poYBAGPzHqOAJt7ZAABw-_dbDQ8660.png圖 10

我們通過訪問Twitter來對該結(jié)果進(jìn)行確認(rèn)。如果“Hello world!”被發(fā)布,就證明我們成功了!

pYYBAGPzHqeAeOTMAAH39ggIO5w077.png圖 11

如果您繼續(xù)發(fā)布相同的推文,則會出現(xiàn)如上所示的錯誤消息。發(fā)生這種情況時,請嘗試更改“推文”的內(nèi)容或者詞序以使其正常工作。

總結(jié)

在“Twython”的第1部分中,我們僅介紹到推文的字符詞序這一部分。
之前當(dāng)我做Twitter的有關(guān)項(xiàng)目時,我會直接訪問Twitter的API,但是用了這個庫之后難度會降低很多。
我認(rèn)為,以Python為基礎(chǔ)的“Twython”可以很容易地應(yīng)用到任何使用元器件電子產(chǎn)品中實(shí)現(xiàn)一些功能,如發(fā)布照片、搜索推文等等。我們將在下一篇文章中進(jìn)一步討論這些內(nèi)容!
下一次,我們將執(zhí)行文檔7-9頁的內(nèi)容,并嘗試發(fā)布多種類型的推文!

pYYBAGPbhjqAbi1JAAAGd6_rQT0867.png

DevicePlus 編輯團(tuán)隊(duì)

設(shè)備升級版適用于所有熱愛電子和機(jī)電一體化的人。

審核編輯黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Raspberry Pi
    +關(guān)注

    關(guān)注

    2

    文章

    559

    瀏覽量

    22290
收藏 人收藏

    評論

    相關(guān)推薦

    請問Raspberry Pi怎么傳輸視頻?

    硬件:Raspberry Pi 3B+,Raspberry Pi Camera v2操作系統(tǒng):Raspbian提問:想把攝像頭拍攝的視屏傳輸?shù)皆品?wù)器
    發(fā)表于 04-30 07:56

    Raspberry Pi安裝RetroPie的教程

    RetroPie是一個用于 Raspberry Pi 模擬復(fù)古視頻游戲的軟件庫。本教程中,我們將在
    的頭像 發(fā)表于 08-26 15:26 ?4195次閱讀
    <b class='flag-5'>在</b><b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b><b class='flag-5'>上</b>安裝RetroPie的教程

    集成智能1部分:EMI管理

    集成智能1部分:EMI管理
    發(fā)表于 10-28 11:59 ?3次下載
    集成智能<b class='flag-5'>第</b><b class='flag-5'>1</b><b class='flag-5'>部分</b>:EMI管理

    如何進(jìn)行電源設(shè)計 - 1部分

    如何進(jìn)行電源設(shè)計 - 1部分
    發(fā)表于 11-02 08:16 ?2次下載
    如何進(jìn)行電源設(shè)計 - <b class='flag-5'>第</b><b class='flag-5'>1</b><b class='flag-5'>部分</b>

    了解你的電池組:1部分

    了解你的電池組:1部分
    發(fā)表于 11-03 08:04 ?0次下載
    了解你的電池組:<b class='flag-5'>第</b><b class='flag-5'>1</b><b class='flag-5'>部分</b>

    電氣過應(yīng)力簡介-1部分

    電氣過應(yīng)力簡介-1部分
    發(fā)表于 11-04 09:52 ?5次下載
    電氣過應(yīng)力簡介-<b class='flag-5'>第</b><b class='flag-5'>1</b><b class='flag-5'>部分</b>

    Raspberry Pi通過網(wǎng)絡(luò)控制LED

    電子發(fā)燒友網(wǎng)站提供《Raspberry Pi通過網(wǎng)絡(luò)控制LED.zip》資料免費(fèi)下載
    發(fā)表于 12-13 09:37 ?0次下載
    <b class='flag-5'>在</b><b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b><b class='flag-5'>上</b><b class='flag-5'>通過</b>網(wǎng)絡(luò)控制LED

    一款用Raspberry Pi和傳感器制作的可穿戴式小型健康管理設(shè)備!第四部分?劇終篇

    1部分:用Raspberry Pi Zero和羅姆SensorMedal制作健康管理設(shè)備!2
    的頭像 發(fā)表于 02-24 10:06 ?2239次閱讀
    一款用<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b>和傳感器制作的可穿戴式小型健康管理設(shè)備!第四<b class='flag-5'>部分</b>?劇終篇

    Raspberry Pi和傳感器制作“可自動營造舒適空間的裝置” 第四部分?劇終篇

    1回:用Raspberry Pi和傳感器制作“可自動營造舒適空間的裝置” 第一部分2回:用
    的頭像 發(fā)表于 02-24 10:17 ?777次閱讀
    用<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b>和傳感器制作“可自動營造舒適空間的裝置” 第四<b class='flag-5'>部分</b>?劇終篇

    通過TwythonRaspberry Pi發(fā)!(2部分

    歡迎來到通過TwythonRaspberry Pi發(fā)
    的頭像 發(fā)表于 03-01 10:19 ?736次閱讀
    <b class='flag-5'>通過</b><b class='flag-5'>Twython</b><b class='flag-5'>在</b><b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b><b class='flag-5'>上</b><b class='flag-5'>發(fā)</b><b class='flag-5'>推</b><b class='flag-5'>文</b>?。?b class='flag-5'>第</b>2<b class='flag-5'>部分</b>)

    使用Crystal Signal Pi3部分:使用Raspberry Pi創(chuàng)建警示燈解決方案—創(chuàng)建工具

    Crystal Signal Pi系列3部分,我們終于要制作工具了!今天,我們將嘗試使用Crystal Signal Pi和溫度傳感器(
    的頭像 發(fā)表于 02-24 17:17 ?794次閱讀
    使用Crystal Signal <b class='flag-5'>Pi</b><b class='flag-5'>第</b>3<b class='flag-5'>部分</b>:使用<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b>創(chuàng)建警示燈解決方案—創(chuàng)建工具

    使用Crystal Signal Pi1部分—使用Raspberry Pi創(chuàng)建警示燈解決方案

    本次文章主題為“Crystal Signal Pi.”。Crystal Signal Pi 是一種擴(kuò)展模塊,可以放在任意Raspberry Pi
    的頭像 發(fā)表于 02-24 18:05 ?753次閱讀
    使用Crystal Signal <b class='flag-5'>Pi</b><b class='flag-5'>第</b><b class='flag-5'>1</b><b class='flag-5'>部分</b>—使用<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b>創(chuàng)建警示燈解決方案

    使用Raspberry Pi 3自制智能相框和日歷—第二部分

    本教程的第二部分將帶您完成構(gòu)建智能相框和日歷的框架、連接PIR運(yùn)動傳感器和控制相框幻燈片顯示向日歷顯示的過渡這些步驟。該項(xiàng)目將繼續(xù)使用本教程的使用Raspberry Pi 3自制智能相框和日歷—第一
    的頭像 發(fā)表于 02-24 17:51 ?1363次閱讀
    使用<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> 3自制智能相框和日歷—第二<b class='flag-5'>部分</b>

    基于Raspberry Pi的DIY無人機(jī)3部分–FPV設(shè)置指南

    本文是我們Raspberry Pi四軸飛行器系列的最后一部分。有關(guān)本教程的其他部分,請參考《DIYRaspberry Pi無人機(jī):機(jī)械構(gòu)造–
    的頭像 發(fā)表于 02-24 17:46 ?5111次閱讀
    基于<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b>的DIY無人機(jī)<b class='flag-5'>第</b>3<b class='flag-5'>部分</b>–FPV設(shè)置指南

    電源設(shè)計方法-1部分

    電子發(fā)燒友網(wǎng)站提供《電源設(shè)計方法-1部分.pdf》資料免費(fèi)下載
    發(fā)表于 09-06 11:40 ?0次下載
    電源設(shè)計方法-<b class='flag-5'>第</b><b class='flag-5'>1</b><b class='flag-5'>部分</b>