Работает на локальном хосте, но не на heroku

Я постоянно получаю эту ошибку Server 500 при развертывании на Heroku. Он отлично работает на моем локальном хосте. Другие страницы на сайте работают нормально, но на этой есть News-API. Не знаю, что делать дальше.

Debug ERROR

\`KeyError at /
'articles'
Request Method: GET
Request URL:    https://lvl27-9617c0ce663b.herokuapp.com/
Django Version: 4.2.10
Exception Type: KeyError
Exception Value:    
'articles'
Exception Location: /app/news/views.py, line 13, in index
Raised during:  news.views.index
Python Executable:  /app/.heroku/python/bin/python
Python Version: 3.9.18
Python Path:    
\['/app/.heroku/python/bin',
'/app',
'/app/.heroku/python/lib/python39.zip',
'/app/.heroku/python/lib/python3.9',
'/app/.heroku/python/lib/python3.9/lib-dynload',
'/app/.heroku/python/lib/python3.9/site-packages'\]
Server time:    Tue, 19 Mar 2024 23:03:02 +0000
Traceback Switch to copy-and-paste view
/app/.heroku/python/lib/python3.9/site-packages/django/core/handlers/exception.py, line 55, in inner
response = get_response(request) …
Local vars
/app/.heroku/python/lib/python3.9/site-packages/django/core/handlers/base.py, line 197, in \_get_response
response = wrapped_callback(request, \*callback_args, \*\*callback_kwargs) …
Local vars
/app/news/views.py, line 13, in index

a = gaming_news\['articles'\]\`

CODE

from django.shortcuts import render
import requests
import os
from dotenv import load_dotenv, dotenv_values
from newsapi import NewsApiClient

load_dotenv()
API = os.getenv('NEWS_API')

def index(request):
    url = (f"https://newsapi.org/v2/everything?q=gaming&apiKey={API}")
    gaming_news = requests.get(url).json()
    a = gaming_news['articles']

    urlToImage = []
    author = []
    title = []
    description = []
    url = []

    for i in range(len(a)):
        f = a[i]
        urlToImage.append(f['urlToImage'])
        author.append(f['author'])
        title.append(f['title'])
        description.append(f['description'])
        url.append(f['url'])
    news_list = zip(urlToImage, author, title, description, url)
    
    context = {'news_list': news_list}

    return render(request, 'news/news.html', context)

Я пытался изменить код, но я уже слишком долго этим занимаюсь.

Вернуться на верх