请选择 进入手机版 | 继续访问电脑版
搜索
热搜: ROHM 模拟 车载
查看: 1846|回复: 4

【R课堂】通过Twython在Raspberry Pi上发推文!(第1部分)

  [复制链接]
回帖奖励 480 ROHM金币 回复本帖可获得 5 ROHM金币奖励! 每人限 1 次

该用户从未签到

4487

主题

5326

帖子

13

精华

管理员

最后登录
2024-6-13
发表于 2022-9-5 10:59:22 | 显示全部楼层 |阅读模式
这篇文章来源于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”。
像往常一样,我们先对系统进行更新。
<em>sudo apt-get update</em>
<em>sudo apt-get upgrade</em>
接下来,输入“Twython”安装指令。
<em>sudo pip3 install twython</em>
之后将显示如下信息:


图 2

输入“pip3 list”指令,显示内容中有“twython (3.4.0)”,证明安装成功。
最后,执行一个确认指令,检查所需要的内容是否已具备。
<em>python3 -c "import twython"</em><br>


图 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”窗口处于活动状态时,按下“______”键或执行顶部菜单中的“Run -> Run Module”。
Tips:点击阅读原文,获得答案


回复

使用道具 举报

该用户从未签到

0

主题

452

帖子

0

精华

金牌会员

最后登录
2023-4-23
发表于 2022-9-5 11:26:10 | 显示全部楼层

回帖奖励 +5 ROHM金币

此帖仅作者可见

使用道具 举报

该用户从未签到

0

主题

477

帖子

0

精华

高级会员

最后登录
2024-3-26
发表于 2022-9-5 23:22:06 | 显示全部楼层

回帖奖励 +5 ROHM金币

此帖仅作者可见

使用道具 举报

  • TA的每日心情
    开心
    2022-9-1 14:42
  • 签到天数: 1 天

    [LV.1]初来乍到

    2

    主题

    3420

    帖子

    0

    精华

    论坛元老

    最后登录
    2024-6-12
    发表于 2022-9-6 02:43:10 | 显示全部楼层

    回帖奖励 +5 ROHM金币

    此帖仅作者可见

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 10:14
  • 签到天数: 577 天

    [LV.9]

    3

    主题

    5573

    帖子

    0

    精华

    论坛元老

    最后登录
    2024-6-12
    发表于 2022-9-6 08:49:17 | 显示全部楼层

    回帖奖励 +5 ROHM金币

    此帖仅作者可见

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条

    Archiver|手机版|小黑屋|罗姆半导体技术社区

    GMT+8, 2024-6-13 12:02 , Processed in 0.101258 second(s), 16 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表