Вывод json API Steam не отображается в чистом виде
Я пытаюсь получить вывод из steam API для отображения в моем приложении django. Моя цель - создать "портфолио" игр, которыми я владею, для проекта - используя информацию из Steam API. Я довольно новичок в Django, но знаю достаточно, чтобы быть опасным. Любая помощь будет очень признательна, так как я бьюсь над этим уже неделю...
Мой вопрос заключается в том, как можно извлечь определенные элементы из json и правильно отобразить данные в шаблоне? Я не могу найти учебник, который бы соответствовал схеме вывода данных из этого API. - Любая помощь (и, возможно, краткое объяснение) была бы очень признательна.
Например, как я могу получить минимальные системные требования из API и отобразить их в div на моей странице?
Это мой views.py:
def index(request):
response = requests.get('https://store.steampowered.com/api/appdetails/?appids=218620').json()
return render(request, 'index.html', {'response': response})
Хотя он действительно возвращает данные, вы заметите, что данные засорены странными символами и т.п.
вывод:
</ul>', 'short_description': 'PAYDAY 2 is an action-packed, four-player co-op shooter that once again lets gamers don the masks of the original PAYDAY crew - Dallas, Hoxton, Wolf and Chains - as they descend on Washington DC for an epic crime spree.', 'supported_languages': 'English<strong>*</strong>, German, French, Italian, Spanish - Spain, Dutch, Russian, Japanese, Simplified Chinese, Spanish - Latin America, Korean<br><strong>*</strong>languages with full audio support', 'header_image': 'https://cdn.akamai.steamstatic.com/steam/apps/218620/header.jpg?t=1646834144', 'website': 'http://www.paydaythegame.com/', 'pc_requirements': {'minimum': '<strong>Minimum:</strong><br><ul class="bb_ul"><li><strong>OS:</strong>Windows 7<br>\t</li><li><strong>Processor:</strong>2 GHz Intel Dual Core Processor<br>\t</li><li><strong>Memory:</strong>4 GB RAM<br>\t</li><li><strong>Graphics:</strong>Nvidia & AMD (512MB VRAM)<br>\t</li><li><strong>DirectX®:</strong>9.0c<br>\t</li><li><strong>Storage:</strong>83 GB available space<br>\t</li><li><strong>Sound:</strong>DirectX 9.0c compatible</li></ul>', 'recommended': '<strong>Recommended
Вот мой index.html:
{% extends 'base.html' %}
{% block content %}
{{response}}
{% endblock %}
если вы добавите тег 'safe' в шаблон django следующим образом:
{% extends 'base.html' %}
{% block content %}
{{ response | safe }}
{% endblock %}
Значительно очищает отображаемый вывод, но все еще показывает кучу странных символов в странных местах - например,
', 'short_description': 'PAYDAY 2 is an action-packed, four-player co-op shooter that once again lets gamers don the masks of the original PAYDAY crew - Dallas, Hoxton, Wolf and Chains - as they descend on Washington DC for an epic crime spree.', 'supported_languages': 'English\*, German, French, Italian, Spanish - Spain, Dutch, Russian, Japanese, Simplified Chinese, Spanish - Latin America, Korean *languages with full audio support', 'header_image': 'https://cdn.akamai.steamstatic.com/steam/apps/218620/header.jpg?t=1646834144', 'website': 'http://www.paydaythegame.com/', 'pc_requirements': {'minimum': 'Minimum:OS:Windows 7 \t Processor:2 GHz Intel Dual Core Processor