Python POST код запроса не работает в django

Я новичок в Django и у меня есть POST запрос, который прекрасно работает в обычном Python CLI. Он возвращает мне веб-страницу, да, веб-страницу, а затем я могу просто использовать Regex для извлечения некоторой ее части и все. Однако у меня много проблем при попытке сделать то же самое в Django и показать извлеченный текст на веб-странице.

Ниже приведены фрагменты кода из моих файлов. Пожалуйста, имейте в виду, что я новичок в Django & Web.

Вот urls.py

from django.contrib import admin
from django.urls import path
from . import views

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', views.output, name='getINFO')
]

Вот шаблон домашней страницы home.html

<body>
        <script>
            var link = '{% url "getINFO" %}';
        </script>

       <button onclick="location.href = link">Submit</button><hr>
       {% if data %}
       <p>{{data}}</p>
       {% endif %}
    </body>

Вот функция в views.py

def output(request):
    
    headers = {
    'Connection':'keep-alive',
    'Pragma':'no-cache',
    'Cache-Control':'no-cache',
    'Upgrade-Insecure-Requests':'1',
    'Origin':'https://www.xxxxxx.com',
    'Content-Type':'application/x-www-form-urlencoded',
    'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.36',
    'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9',
    'Referer':'https://www.xxxxxxx.com',
    'Accept-Language':'en-US,en;q=0.9'
    }

    payload = {
    '__VIEWSTATE':'xxx',
    '__VIEWSTATEGENERATOR':'xxx',
    '__EVENTVALIDATION':'xxx',
    'MIS':'xxxxxxxxxxxxx',
    'MISB':'xxxx'
    }

    url = 'https://www.xxxxxx.com'
    res = requests.post(url,headers=headers, data=payload)

    price = re.search('style="font-size:X-Large;">(.*?)\/-<\/span>',res.text)

    return render(request,'home.html',{'data':price})

Приведенный выше запрос прекрасно работает в обычном Python CLI, и цена действительно имеет извлеченный текст, который я могу увидеть, распечатав его на консоли. Я хочу сделать то же самое здесь, распечатать любой текст, который есть у price, на веб-странице.

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