Использование оператора «Если» для проверки ответа веб-перехватчика данных JSON

Я использую библиотеку запросов и сделал запрос к twitch api. Я отфильтровал данные по переменным, но хотел бы знать, есть ли способ использовать оператор «Если» для переменных. Данные хранятся в формате JSON.

Обновлено: я не получаю никаких ошибок, но код просто не запускается.

Мой код ниже:


client = discord.Client()
token = open("token.txt", "r").read()
myclient = pymongo.MongoClient("mongodb url")
mydb = myclient["Cluster0"]
mycol = mydb["live"]

cursor = mycol.find({ "type": "user" }, {'_id': 0, 'twitch': 1, 'channelID': 1})
for item in cursor:
    x = item.get('twitch')
    channelid = item.get('channelID')
    print(x)
    print(channelid)

headers = {
    'client-id': 'twitch client id',
    'Authorization': 'twitch ouath token',
}

params = (
    ('query', x),
)

response = requests.get('https://api.twitch.tv/helix/search/channels', headers=headers, params=params)

final = response.json()

finali = final['data'][0]['is_live']

finale = final['data'][0]['thumbnail_url']

finaly = final['data'][0]['title']

finalo = final['data'][0]['started_at']

print(final)

# I would like the If here, Eg. If finali == "True":
async def my_background_task():
    await client.wait_until_ready()
    counter = 0
    print("someone live")
    channel = client.get_channel(channelid)
    while not client.is_closed():
        counter += 1
        embedVar2 = discord.Embed(title = "" + x + " is now live on Twitch!", description = "" + finaly + "", url = "https://twitch.tv/" + x + "", color=0x0C8BC2)
        embedVar2.set_image(url = "" + finale + "")
        await channel.send("@everyone")
        await channel.send(embed=embedVar2)
        await asyncio.sleep(60) # task runs every 60 seconds

client.loop.create_task(my_background_task())
client.run('token')
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
1
248
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Finali должен вернуть логическое значение из этого json, поэтому вместо тестирования if finali == "True" вы просто проверите: if finali: что if finali == True, но короче.

Итак, ответ: да, вы можете использовать оператор if с этими переменными.

Привет, я получаю неверный синтаксис с If finali:

Pois 24.12.2020 13:53

это `if`` - все строчные буквы - в комментарии @Lemon.py была незначительная ошибка.

Tony Suffolk 66 24.12.2020 14:10

Другие вопросы по теме