Exemplo n.º 1
0
def authorize(args):
    if args.from_file:
        consumer_key, consumer_secret = __get_credentials_cache().values()[:2]
    else:
        consumer_key, consumer_secret = args.client
    if args.token:
        access_token, access_token_secret = args.token
    else:
        authorizer = TwitterAuthorizer(consumer_key, consumer_secret)
        print("Please access to this url: " + authorizer.get_authorization_url())
        pin = input("And input pin code: ")
        access_token, access_token_secret = authorizer.get_token(pin)
    session = TwitterSession(consumer_key,
                             consumer_secret,
                             access_token,
                             access_token_secret)
    user_obj = session.account_verify_credentials()
    user_id = user_obj["id_str"]
    screen_name = user_obj["screen_name"]
    credentials = __get_credentials_cache(get_all=True, ignore=True)
    if credentials is not None:
        user_id_lst = [x["user_id"] for x in credentials]
    if credentials is None or user_id not in user_id_lst:
        __write_credentials_cache(consumer_key,
                                  consumer_secret,
                                  access_token,
                                  access_token_secret,
                                  user_id,
                                  screen_name)
    else:
        index = user_id_lst.index(user_id)
        credentials[index]["consumer_key"]        = consumer_key
        credentials[index]["consumer_secret"]     = consumer_secret
        credentials[index]["access_token"]        = access_token
        credentials[index]["access_token_secret"] = access_token_secret
        credentials[index]["screen_name"]         = screen_name
        __overwrite_credentials_cache(credentials)
    print("Authorization successful!")