У меня есть простая функция youtube_dl для доступа к ссылкам для скачивания YouTube здесь,
@QtCore.Slot(str, результат=str)
def getDownloadLinks (я, URL):
пытаться:
с youtube_dl.YoutubeDL({}) как ydl:
результат = ydl.extract_info (url, загрузка = False)
если "записи" в результате:
видео = результат["записи"][0]
еще:
видео = результат
r_videos = []
для видео в видео["форматы"]:
r_videos.append({"url": видео["url"], "формат": видео["формат"], "размер": видео["размер файла"]})
resRet = {"status":"true", "urls": r_videos}
вернуть строку (резет)
кроме Исключения как e:
resRet = {"status":"true", "error": str(e)}
вернуть строку (резет)
И я пытаюсь получить к нему доступ в файле QML, в котором есть такая функция, которая обращается к этой функции python, вызывая ее следующим образом.
функция getLinks(url){
jsonString = downloadeng.getDownloadLinks(url)
console.log(jsonString)
вар jsonObject = JSON.parse(jsonString)
вар объект = JSON.parse(jsonObject)
если (anObject.status == 'false') {
//открыть всплывающее окно
console.log("открытие всплывающего окна")
} еще {
console.log(объект.url)
}
}
Но каждый раз, когда я получаю синтаксическую ошибку, подобную этой
SyntaxError: JSON.parse: ошибка синтаксического анализа
указание вар объект = JSON.parse(jsonObject)
эта линия. Другое дело, что я дважды разбираю JSON, так как он ошибается при одном разборе, но отлично работает при втором разборе. Пожалуйста, помогите мне с этими двумя вещами.