如何在Ubuntu14.04上使用Tweepy通过Twitter验证Python应用程序

来自菜鸟教程
跳转至:导航、​搜索

介绍

使用 Python 访问 Twitter API 对于推广您的品牌(如果您代表企业或组织)以及令人难以置信的愉快和娱乐(如果您是个人用户或业余程序员)非常有用。

在本文中,我们将概述创建 Twitter 应用程序和使用 Python 访问您的帐户所需的步骤。

先决条件

在开始之前,请确保您已完成以下先决条件:

  • 一个 Ubuntu 14.04 Droplet
  • 一个 sudo 非 root 用户,您可以按照 本教程 中的步骤 1-4 进行设置。
  • 具有有效电话号码的 Twitter 帐户

您还需要预装在 Ubuntu 14.04 上的 Python 2.7。 为确保您拥有正确的版本 (2.7.x),您可以在终端输入以下命令:

python --version

本文将使用 Ubuntu 14.04 LTS 作为 Linux 服务器发行版,但在 Ubuntu 12.04、Ubuntu 12.10 和 Ubuntu 14.10 上的步骤应该相同。

第 1 步 — 安装 pip 和 Tweepy

在这一步中,我们将安装 pip 和 Tweepy。

Python 库 Tweepy 提供了对 Twitter API 的轻松访问。 获取 Tweepy 的最简单方法是使用 Python 包管理系统 pip。

首先,我们将安装 pip。

sudo apt-get update && sudo apt-get install python-pip

这将在您的系统上设置 python-pip 并允许您使用 pip 命令安装许多其他 Python 库。

接下来,我们将使用 pip 安装 Tweepy。

sudo pip install tweepy

注意:使用 sudo 通过 pip 安装 Python 库将在系统范围内安装它并使其可供所有用户使用。

第 2 步 — 创建您的 Twitter 应用程序

我们现在将解释创建 Twitter 应用程序并检索您的 API 访问密钥和令牌的过程。 这些令牌将允许您使用 Twitter 对 Python 客户端应用程序进行身份验证。 如先决条件中所述,您需要一个有效的电话号码才能使用 Twitter 创建应用程序。

打开您的浏览器并访问 https://apps.twitter.com/ 然后使用您的 Twitter 帐户凭据登录。 登录后,单击标记为 Create New App 的按钮。

您现在将被重定向到应用程序创建页面。 填写所需的表格信息并接受页面底部的开发者协议,然后单击标有 创建您的 Twitter 应用程序 的按钮。

在此页面上,您将填写以下字段。

您还必须单击开发者协议下方的 是的,我同意 复选框。

第 3 步 — 修改您的应用程序的权限级别并生成您的访问令牌

成功创建应用程序后,您将被重定向到应用程序的设置页面。 在创建应用程序密钥之前,您需要先修改访问级别权限,以允许您的应用程序代表您发布。

单击标有 修改应用权限 的链接。 然后,您将能够选择允许哪些权限。 选择 Read and Write 以允许您的应用程序在您帐户的时间线上发布。 如果要允许 API 访问直接消息,请改为选择 读取、写入和访问直接消息

更新应用程序的权限以允许发布后,单击标签为 密钥和访问令牌 的选项卡。 这将带您进入列出您的消费者密钥和消费者秘密的页面,并且还允许您生成访问令牌和访问令牌秘密。 这些密钥和秘密对于使用 Twitter 验证我们的客户端应用程序是必需的。

单击 Access Token 标题下标记为 Create my access token 的按钮以生成您的 Access Token 和 Access Token Secret。

现在您将拥有一个访问令牌和一个访问令牌秘密。 您还将看到您之前选择的访问级别、您作为所有者的用户名和您的所有者 ID。

第 4 步 - 创建一个 Python 应用程序以通过 Twitter 进行身份验证

在成功创建您的 Twitter 应用程序并生成必要的密钥和令牌之后,您现在可以创建您的客户端应用程序以发布到您的时间线。 在这一步中,我们为您提供一个简单的“Hello World!” 用于测试您的应用程序的 Python 脚本。

创建一个名为 helloworld.py 的新文件。

nano helloworld.py

将以下脚本粘贴到编辑器中。 将密钥和机密替换为您在 Twitter 应用程序网站上的唯一凭据。 您也可以替换“测试!” 状态与您希望测试推文说的任何内容。

import tweepy

CONSUMER_KEY = 'your_consumer_key'
CONSUMER_SECRET = 'your_consumer_secret'
ACCESS_TOKEN = 'your_access_token'
ACCESS_TOKEN_SECRET = 'your_access_token_secret'

auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_TOKEN, ACCESS_TOKEN_SECRET)
api = tweepy.API(auth)

status = "Testing!"
api.update_status(status=status)

保存文件,然后运行脚本。

python helloworld.py

检查您的 Twitter 帐户。 如果状态发布到您帐户的时间线,则您已成功配置您的 Twitter 应用程序并使用 Tweepy 进行身份验证!