确认屏幕名称存在

时间:2016-07-04 08:41:36

标签: python django error-handling tweepy

我有一个django应用程序,使用tweepy来获取特定人物的最后一条推文,给出他/她的screen_name。但是,由于screen_name字段对于我的应用程序来说是可选的,因此有时候我的screen_names可能是空的或者根本不存在。

但是,如果发生这种情况(例如,如果我使用user_lookup),Tweepy会启动TweepyError异常,然后我的应用程序停止。有办法处理这个吗?我只想验证Twitter的screen_name的存在并返回TrueFalse语句,而不停止我的应用程序。

2 个答案:

答案 0 :(得分:1)

这会帮助你。这将帮助您获得用户数组中存在的每个Twitter句柄的有效性/存在状态。

import tweepy
from tweepy import OAuthHandler



consumer_key = ""
consumer_secret = ""
access_key = ""
access_secret = "" 


auth = OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_key, access_secret)
api = tweepy.API(auth)
users=["twitterhandle1","twitterhandle2"]

for x in users:
    try:
        u=api.get_user(x)
        print (u.id_str)
        print (u.screen_name)
    except Exception:
            pass

答案 1 :(得分:0)

如果您的目的是阻止您的应用程序在Tweepy引发TweepyError例外时停止,则这是使用python的{​​{1}}语句的典型案例。

try...except

但是......你提到你的应用程序的twitter名称是可选的,这导致了问题。我不明白为什么你不能对此进行简单的检查。假设您的字段名称为try: # do whatever with tweepy here except TweepyError: # do what you want to when the lookup fails pass twitter_name是其所属模型的实例:

model_instance