Если вы можете полагаться на данные, глядя так же, как это каждый раз, то вы можете просто рубить бит, который останавливается причем JSON:
json_data = json.loads('{' + json_file.read().partition('{')[2])
(или использовать регулярное выражение, или все, что вы предпочитаете для манипуляций со строками)
Вы все равно должны опасаться, что JavaScript не то же самое, что JSON, поэтому вам нужна уверенность в том, что то, что вам дано, всегда будет назначением действительного ассоциативного массива JSON для переменной.
Если, с другой стороны, вам передают произвольный JavaScript, и вы ожидаете его оценить, тогда вам предстоит решить гораздо большую проблему. Что, если кто-то даст вам var xyz = "Monthly"; var abc = {"label" : xyz, "URL" : "xyz" + "." + "com"}
?
Для решения этой более общей проблемы необходим механизм JavaScript, а не только парсер JSON. Например, js2py
претендует на полный механизм JavaScript, написанный на Python, но я никогда не использовал его, поэтому я не могу рекомендовать его или рекомендовать.
Существуют также проблемы с безопасностью, которые необходимо учитывать при выполнении кода из ненадежных источников, помимо тех, которые вы считаете, если все, что вы делаете, - это разбор JSON из ненадежного источника. Поэтому, если вам нужно использовать движок JavaScript, убедитесь, что вы правильно поняли, как он изолирован.
JavaScript не JSON. –
правильный только видел ..это javascript, в котором есть json внутри ... вы можете мне помочь, как я могу добавить в него новую пару ключевых значений, например «Mar 2016»: «03312016». Я хотел бы сделать это стандартным способом ... – Piya