TypeError: невозможно объединить ошибки объектов str и dict с Bit.ly_API - PullRequest
0 голосов
/ 09 мая 2018

У меня небольшая проблема.Я все еще очень плохо знаком с питоном.Так что дикты очень новы для меня.Я знаю, как решать проблемы, и я надеюсь учиться на своих ошибках.

Итак, ошибка приведена ниже с 'shortURL' в первой текстовой переменной.Просто интересно, что означает проблема и как я мог бы решить ее?Я посмотрел онлайн и не до конца понял, почему из-за большого количества проблем просматривается строка, но bit.ly_api просто возвращает URL.

Спасибо за любую помощь :)

    print("")
    print("Welcome to Sole Retriever Tweet Formulator b0.1")
    type = (raw_input('What kind of tweet would you like to do?' + '\n' + '1. Store URL + Website Site' + '\n' + '2.Website URL Only' + '\n'))
    if type == ('1'):
        store1 = (raw_input('What is the store name hosting the Off-White x Converse Raffle? '))
        storeURL = (raw_input('What is the direct URL to the raffle? '))
        shortURL = b.shorten(storeURL)
        text = ('Woof! ' + store1 + ' raffle is now live for the Off-White x Converse Chuck Taylor!' + '\n' + '\n' + shortURL + '\n' + '\n' + 'For raffle details and where to enter check and filter by "live" -' + '\n' + '\n' + 'https://www.soleretriever.com/off-white-x-converse-chuck-taylor/' + '\n' + '\n' + '#soleretriever #offwhite #converse #sneakers')
        print (text)
        os.system("echo '%s' | pbcopy" % text)
        print ('\n')
        print ('Copied to Clipboard')
        twitter = Twython(APP_KEY, APP_SECRET, OAUTH_TOKEN, OAUTH_TOKEN_SECRET)
        twitter.update_status(status=text)
    if type == ('2'):   
        store = (raw_input('What is the store name hosting the Off-White x Converse Raffle? '))
        text = ('Woof! ' + store + ' raffle is now live for the Off-White x Converse Chuck Taylor!' + '\n' + '\n' + 'For raffle details and where to enter check and filter by "live" -' + '\n' + '\n' + 'https://www.soleretriever.com/off-white-x-converse-chuck-taylor/' + '\n' + '\n' + '#soleretriever #offwhite #converse #sneakers')
        print (text)
        os.system("echo '%s' | pbcopy" % text)
        print ('\n')
        print ('Copied to Clipboard')
        twitter = Twython(APP_KEY, APP_SECRET, OAUTH_TOKEN, OAUTH_TOKEN_SECRET)
        twitter.update_status(status=text)

1 Ответ

0 голосов
/ 09 мая 2018

Вызов b.shorten(storeURL) вернет dict с парами ключ / значение, включая url. Python выдаст эту ошибку, когда вы объединяете строку и диктуете, как в print(). Я бы предложил что-то вроде:

response = b.shorten(storeURL)
shortURL = response['url']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...