这篇文章来源于deviceplus.com英语网站的翻译稿。
原文最初由deviceplus.jp发布,本文为英译版。
今天,我将介绍如何通过“twython”实现raspberry pi与twitter(推特)之间的连接。我过去曾经尝试过连接twitter,但是比想像的要难!这次,我们将按照raspberry pi 官方网站文档里的方法来进行。本文中,我们将使用2017年11月29日发布的“raspbian stretch with desktop”操作系统和“raspberry pi2model b”。
什么是twython?
twython 官方网站
twython – twython 3.6.0 文档
用于twitterapi的积极维护的纯python装饰器。支持常规和流式twitter apis。
「twython」是一个用于twitter api的python库。
twitter 库 — twitter 开发者
twython by @ryanmcgrath—用于twitter api的积极维护的纯python装饰器。支持常规和流式twitter apis。支持所有v1.1端点,包括动态函数,因此用户可以使用库中尚未包含的端点。
官方twitter中也介绍了这一点。
安装 twython
图 1
twitter api 入门简介
现在我们继续。当您想切换页面时,请点击左侧菜单,因为url不可以更改。
正数第二个选项,“您需要什么”,里面描述了如何安装“用于python 3的twython”。
像往常一样,我们先对系统进行更新。
sudo apt-get update
sudo apt-get upgrade
接下来,输入“twython”安装指令。
sudo pip3 install twython
之后将显示如下信息:
图 2
输入“pip3 list”指令,显示内容中有“twython (3.4.0)”,证明安装成功。
最后,执行一个确认指令,检查所需要的内容是否已具备。
python3 -c import twython
图 3
如果没有出现错误信息,就表示准备工作已经完成!
在页面末尾,有一条警告信息指出使用twitter api需要已验证的电话号码。如果您没有注册电话号码,将无法在应用程序上完成twitter的注册,因此请务必先完成电话号码的注册。
注册一个twitter账户
第三条中的“创建一个twitter账户”详细介绍了如何创建twitter账户。对于第一次注册的用户,请参考twitter 官方网站上的信息对账户进行设置。如果使用的是已有账户,请转至第四页。
“创建一个twitter应用程序”中详细说明了如何创建一个twitter应用程序。
在twitter 应用程序管理页面中登录twitter账户,并点击“创建一个新的应用程序”按钮。
图 4
接下来,输入“名称”、“描述”和“网址”。在“网址”输入相应内容是必要的,但是因为我不会公开此账号,所以在这里我输入了自己的twitter url。同意条款和条约后,点击“创建您的twitter应用程序”按钮。
图 5
如果您没有为您的twitter账户注册电话号码,将会出现以上错误信息。
发生这种情况时,请参阅以下文件来注册电话号码。
如何为您的账户注册电话号码
图 6
完成注册后,点击“密钥和访问令牌”按钮。
“消费者密钥(api密钥)”和“消费者秘密(api秘密)”是使用twython进行相关验证时需要的值。
首先,我们来确认一下访问级别。
如果您将其设置为“可读和可写”,那就没问题了。我将该设定作为默认设置,但是您可以通过点击“修改应用程序权限”链接随时对其进行更改。
接下来是创建访问令牌。点击屏幕底部的“创建我的访问令牌”按钮。
图 7
在“您的访问令牌”下,将显示“访问令牌”和“访问令牌秘密”。与之前的“消费者密钥(api密钥)”和“消费者秘密(api秘密)”相同,使用twython时会用到这些值。
设置日期/时间
第五页中的“设置系统日期/时间”是设置日期和时间的有关信息,所以我们在raspberry pi的设置中对日期和时间进行调整。
在twitter上发帖!
进行到第六页中“从python发送一条推文”这一步,我们终于有了写程序的机会!从菜单中选择“programming(编程)”—“python 3(idel)”并打开编辑器。
图 8
最初显示的内容如上所示,但是如果一直这样保持不变,那么将会依次逐行执行所有的指令,所以我们来点击[file] – [new file]创建一个新的程序。按照下图顺序依次写入“consumer key (api key)”、“consumer secret (api secret)”、“access token”、“access token secret”,并将其储存在名为“auth.py”的文件中。
0102 consumer_key = 'abcdefghijklkmnopqrstuvwxyz'0304 consumer_secret = '1234567890abcdefghijklmnopqrstuvxyz' access_token = 'zyxwvutsrqponmlkjihfedcba' access_token_secret = '0987654321zyxwvutsrqponmlkjihfedcba'
写python程序的时候需要注意,前导空格和制表符所导致的缩进会对程序产生影响。
(缩进字符相同的行会被视为块)
我将该文件保存在“/home/pi/”目录中。我想当您以pi用户的身份登录时,该目录会被认为是默认保存路径。接下来,我们将会输入用于twitter发帖的程序。再一次点击[file]-[new file]创建一个新的文件,并写入程序,如下所示。然后,将文件命名为“twitter.py”并保存到与“auth.py”相同的路径中。
0102 from twython import twython0304 from auth import (0506 consumer_key,0708 consumer_secret,0910 access_token,1112 access_token_secret13 )141516 twitter = twython(1718 consumer_key, consumer_secret, access_token, access_token_secret)message = hello world!twitter.update_status(status=message)print(tweeted: %s % message)
在“twitter.py”窗口处于活动状态时,按下“f5”键或执行顶部菜单中的“run -> run module”。
图 9
然后执行屏幕应显示 「tweeted:hello world!」
图 10
我们通过访问twitter来对该结果进行确认。如果“hello world!”被发布,就证明我们成功了!
图 11
如果您继续发布相同的推文,则会出现如上所示的错误消息。发生这种情况时,请尝试更改“推文”的内容或者词序以使其正常工作。
总结
在“twython”的第1部分中,我们仅介绍到推文的字符词序这一部分。
之前当我做twitter的有关项目时,我会直接访问twitter的api,但是用了这个库之后难度会降低很多。
我认为,以python为基础的“twython”可以很容易地应用到任何使用元器件的电子产品中实现一些功能,如发布照片、搜索推文等等。我们将在下一篇文章中进一步讨论这些内容!
下一次,我们将执行文档7-9页的内容,并尝试发布多种类型的推文!
deviceplus 编辑团队
设备升级版适用于所有热爱电子和机电一体化的人。
车载中控屏核心板开机不良的详细分析
共享溜娃小车现身!共享溜娃小车现身:两元半小时,押金99元比售价还贵你怎么看?
硬件工程师教你如何理解地的概念
电动汽车系统中通过隔离降低EMI的三种方案
驱动数字经济 助力科技创新 中亿云矿布局绿色区块链产业
通过Twython在Raspberry Pi上发推文!(第1部分)
EtherCAT最具性价比的完整解决方案(Master+Slave+Soft)-集佰睿科技
中国联通开始拆除2G网络基站
电感式接近传感器的定义和原理
研华推出不锈钢无风扇工业平板电脑IPPC-8151S
注液工艺五大痛点及应对策略
Seegrid推出Palion 8系列无人自主堆垛车
安卓系统USB产品芯片使用推荐
如何存放电池?
吉他音效电路图讲解
什么是晶体振荡器老化?老化的原因 如何测量晶体振荡器的老化?
无线收发数传MODEM模块PTR2030及其应用
获得5G牌照对广电的影响
2018年全球物联网将呈现那四大趋势
六大共享单车接入支付宝,押金全免,信用城市OR共享单车洗牌?