通过twitterAPI获取twitter数据(基本方法、步骤)

一、准备工作

1.通过已有推特账号访问https://apps.twitter.com/ 点击打开链接;(需要)

2.点击右上角图标,填写“name,Description,website”,其中name为APP的名称,自己随便起,不能和别人已有的重名;description是对自己APP的描述(随便写);website自己有网站写自己的网站,没有就写一个符合格式的网站就行,以后可以再改。

通过twitterAPI获取twitter数据(基本方法、步骤)_第1张图片通过twitterAPI获取twitter数据(基本方法、步骤)_第2张图片

callback Urls 可以不填,选中“yes,I have...”,点击“create your Twitter application”。

3.进入下一页可以看到

通过twitterAPI获取twitter数据(基本方法、步骤)_第3张图片

点击“Keys and Access Tokens”可以看到“consumer Key”和“consumer secret”(记住这两项!!!)

通过twitterAPI获取twitter数据(基本方法、步骤)_第4张图片

向下拉到底,点击“create my access token”,生成Access token见下图

通过twitterAPI获取twitter数据(基本方法、步骤)_第5张图片

务必记住此处的Access Token和Access Token Secrect(!!!)。

这里的两项和之前的“consumer Key”和“consumer secret两项,即为我们所需的访问twitterAPI的全部内容。

 

二. 开始写程序(此处使用Python,根据自己情况

注:https://geduldig.github.io/TwitterAPI/authentication.html 点我打开,此链接有关于基本程序的详细说明。

通过twitterAPI获取twitter数据(基本方法、步骤)_第6张图片

鉴于国内大陆“有墙”,我们采用上图的方法。

下面是我根据网站介绍写的一个小程序:

 

# -*- coding:utf-8 -*-
from TwitterAPI import TwitterAPI
from TwitterAPI import TwitterPager


def search_tweets(the_consumer_key, the_consumer_secret, the_access_token_key,
                  the_access_token_secret, the_proxy_url):
    """
    搜索含有特定“内容”的推文
    :param the_consumer_key: 已有的consumer_key
    :param the_consumer_secret: 已有的consumer_secret
    :param the_access_token_key: 已有的access_token_key
    :param the_access_token_secret: 已有的access_token_secret
    :param the_proxy_url: 代理及端口号
    :return:
    """
    api = TwitterAPI(consumer_key=the_consumer_key,
                     consumer_secret=the_consumer_secret,
                     access_token_key=the_access_token_key,
                     access_token_secret=the_access_token_secret,
                     proxy_url=the_proxy_url)
    r = TwitterPager(api, 'search/tweets', {'q': 'pizza', 'count': 10})
    for item in r.get_iterator():
        if 'text' in item:
            print item['text']
        elif 'message' in item and item['code'] == 88:
            print 'SUSPEND, RATE LIMIT EXCEEDED: %s\n' % item['message']
            break


if __name__ == "__main__":
    consumerKey = ""  # 分别对应填写你申请的四项内容
    consumerSecret = ""
    accessToken = ""
    accessTokenSecret = ""
    proxyUrl = ""  # 填写你的代理
    
    search_tweets(the_consumer_key=consumerKey,
                  the_consumer_secret=consumerSecret,
                  the_access_token_key=accessToken,
                  the_access_token_secret=accessTokenSecret,
                  the_proxy_url=proxyUrl)

附:推推官方文档地址https://developer.twitter.com/en/docs(包括关于推文和用户的接口的说明)。

你可能感兴趣的:(Python,爬虫,推特)