Я использую библиотеку запросов и сделал запрос к 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')
Finali должен вернуть логическое значение из этого json, поэтому вместо тестирования if finali == "True"
вы просто проверите: if finali:
что if finali == True
, но короче.
Итак, ответ: да, вы можете использовать оператор if с этими переменными.
Привет, я получаю неверный синтаксис с If finali:
это `if`` - все строчные буквы - в комментарии @Lemon.py была незначительная ошибка.
Пожалуйста, отредактируйте свой вопрос следующим образом: более подробная информация или уточнение проблемы, включение текущего результата, включение ожидаемого результата. См. Как спросить