Как быстрее получить несколько URL-адресов в Python/Django

У меня есть код, который анализирует json файл, содержащий около 400 URL и посылает запрос к каждому из них на основе поискового запроса и получает его код состояния. Когда я запускаю его, это занимает много времени (более 10 минут), мне интересно, есть ли способ заставить этот код получать эти URL и их код состояния менее чем за 10 секунд.

views.py

def get_sites(request):
    all_sites = {}
    if 'name' in request.GET:
        name = request.GET['name']

        with open('sites-data.json') as f:
            data = json.load(f)
            mod_data = json.loads(json.dumps(data).replace("{}",name))

            for item in mod_data:
                if mod_data[item]['errorType'] == "status_code":
                    url = mod_data[item]['url'] 
                    response = requests.head(url, allow_redirects=False)
                    status_code = response.status_code
                    

                    if status_code == 200:
                        site_data = Search(
                            term = name,
                            sitename = item,
                            is_available = True,
                        )
                        site_data.save()
                    else:
                            site_data = Search(
                                term = name,
                                sitename = item,
                                is_available = False,
                            )
                            site_data.save()

                    all_sites = Search.objects.all().order_by('-id')

    return render(request, 'main/search.html',{"all_sites":all_sites} )

search.html

    <div class = "container">
      <br>
      <h2 class = "text-center">SEARCH SITES</h2> 
      <br>
      <form method="GET">
        <input type = "text" name = "name" placeholder="Search..." class = "text-center">
        <button type = "submit" class = "btn-danger btn-sm">Search</button>
      </form> 
    </div>  
Вернуться на верх