Трекер делает скриншоты экрана в рандомное время
{% extends 'base.html' %}
{% load static %}
{% block scripts %}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://mottie.github.io/tablesorter/css/theme.default.css">
<script src="https://mottie.github.io/tablesorter/js/jquery.tablesorter.js"></script>
<script type="text/javascript">
$(function() {
$("#tab").tablesorter();
});
</script>
{% endblock scripts %}
{% block content %}
<form action="/search/" method="get">
<input type="text" name="q">
<input type="submit" value="Search">
</form>
<table id="tab" class="table table-hover table-bordered tablesorter">
<thead>
<tr>
<th>Month</th>
<th>Savings</th>
</tr>
</thead>
<tbody>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td>$80</td>
</tr>
</tbody>
<tr>
<td>Sum</td>
<td>$180</td>
</tr>
</table>
<div class="container">
<br>
<!-- GOALIES -->
<h4>Goalies</h4>
<table id="tab4" class="table table-hover table-bordered tablesorter">
<thead class=thead-light>
<tr>
<th>Name</th>
<th>Position</th>
<th>Team</th>
<th>Height</th>
<th>Weight</th>
<th>Born</th>
<th>Drafted</th>
<th>Year</th>
<th>Games</th>
<th>Wins</th>
<th>Losses</th>
<th>OTL</th>
<th>GAA</th>
<th>SV %</th>
<th>SV</th>
<th>SHO</th>
</tr>
</thead>
{% for goalie in goalies %}
<tbody>
<tr>
<td><a href="{% url 'player_detail' goalie.playerName|slugify goalie.playerId %}">{{ goalie.playerName }}</td>
<td>{{ goalie.playerPositionCode }}</td>
<td>{{ goalie.playerTeamsPlayedFor }}</td>
<td>{{ goalie.playerHeight }}</td>
<td>{{ goalie.playerWeight }}</td>
<td>{{ goalie.playerBirthDate }}</td>
<td>{{ goalie.playerDraftOverallPickNo }}</td>
<td>{{ goalie.playerDraftYear }}</td>
<td>{{ goalie.gamesPlayed }}</td>
<td>{{ goalie.wins }}</td>
<td>{{ goalie.losses }}</td>
<td>{{ goalie.otLosses }}</td>
<td>{{ goalie.goalsAgainstAverage|floatformat:2 }}</td>
<td>{{ goalie.savePctg|floatformat:3 }}</td>
<td>{{ goalie.saves }}</td>
<td>{{ goalie.shutouts }}</td>
{% endfor %}
</tr>
</tbody>
</table>
<br>
<!-- SKATERS -->
<h4>Skaters</h4>
<table id="tab5" class="table table-hover table-bordered tablesorter">
<thead class=thead-light>
<tr>
<th>Name</th>
<th>Position</th>
<th>Team</th>
<th>Height</th>
<th>Weight</th>
<th>Born</th>
<th>Drafted</th>
<th>Year</th>
<th>Games</th>
<th>Goals</th>
<th>Assists</th>
<th>Points</th>
<th>+/-</th>
<th>PIM</th>
<th>Shots</th>
<th>Hits</th>
<th>Blocks</th>
<th>FW</th>
<th>PPP</th>
<th>SHP</th>
<th>TOI</th>
<th>TOI PP</th>
<th>TOI SHP</th>
</tr>
</thead>
{% for player in skaters %}
<tbody>
<tr>
<td><a href="{% url 'player_detail' player.playerName|slugify player.playerId %}">{{ player.playerName }}</td>
<td>{{ player.playerPositionCode }}</td>
<td>{{ player.playerTeamsPlayedFor }}</td>
<td>{{ player.playerHeight }}</td>
<td>{{ player.playerWeight }}</td>
<td>{{ player.playerBirthDate }}</td>
<td>{{ player.playerDraftOverallPickNo }}</td>
<td>{{ player.playerDraftYear }}</td>
<td>{{ player.gamesPlayed }}</td>
<td>{{ player.goals }}</td>
<td>{{ player.assists }}</td>
<td>{{ player.points }}</td>
<td>{{ player.plusMinus }}</td>
<td>{{ player.penaltyMinutes }}</td>
<td>{{ player.shots }}</td>
<td>{{ player.hits }}</td>
<td>{{ player.blockedShots }}</td>
<td>{{ player.faceoffsWon }}</td>
<td>{{player.ppPoints}}</td>
<td>{{player.shPoints}}</td>
<td>{{player.timeOnIcePerGame}}</td>
<td>{{player.ppTimeOnIcePerGame}}</td>
<td>{{player.shTimeOnIcePerGame}}</td>
{% endfor %}
</tr>
</tbody>
</table>
</div>
{% endblock content %}
{% load static %}
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!-- Bootstrap CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="{% static 'main.css' %}">
{% block scripts %} {% endblock scripts %}
{% if title %}
<title>NHL stats tracker - {{ title }}</title>
{% else %}
<title>NHL stats tracker</title>
{% endif %}
</head>
<body>
<header class="site-header">
<nav class="navbar navbar-expand-md navbar-dark bg-steel fixed-top">
<div class="container">
<a class="navbar-brand mr-4" href="{% url 'home' %}">Home Page</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarToggle" aria-controls="navbarToggle" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarToggle">
<div class="navbar-nav mr-auto">
<a class="nav-item nav-link" href="{% url 'players' %}">Players</a>
<a class="nav-item nav-link" href="{% url 'favorites' %}">Favorites</a>
<a class="nav-item nav-link" href="{% url 'about' %}">About</a>
</div>
<!-- <Navbar Right Side> -->
<div class="navbar-nav">
<form action="/search/" method="get">
<input type="text" name="q" class="form-control-sm">
<input type="submit" value="Search" class="form-control-sm">
</form>
{% if user.is_authenticated %}
<a class="nav-item nav-link" href="{% url 'logout' %}">Logout</a>
<a class="nav-item nav-link" href="{% url 'profile' %}">Profile</a>
{% else %}
<a class="nav-item nav-link" href="{% url 'login' %}">Login</a>
<a class="nav-item nav-link" href="{% url 'register' %}">Register</a>
{% endif %}
</div>
</div>
</div>
</nav>
</header>
<main role="main" class="container">
<div class="row">
<div class="col-md-8">
{% if messages %}
{% for message in messages %}
<div class="alert alert-{{ message.tags }}">{{ message }}</div>
{% endfor %}
{% endif %}
{% block content %}{% endblock content %}
</div>
</div>
</main>
<!-- Optional JavaScript -->
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>
</body>
</html>
Я уже тут создал новый вопрос.
Все XHR запросы проковырял, ничего не нашел. Остаток вытягивается без проблем, продаж не вижу( У них там не вся инфа подгружается напрямую из этих json ответов. Видимо JS как-то подгружает, нужно как-то узнать конкретный API эндпойнт, в котором возможно есть публичная инфа о продажах.
Ибо например при парсинге пунктов выдачи основную инфу о них я не нашел в запросах с этой конкретной странички, только нагуглил api url из которого люди парсили в примере
По продажам такого не найдено, но есть же сервисы, типа расширения для браузера Маяк, которые дают инфо по заказам.
Вам уже не актуально, но для истории. Может кто-то из гугла на этот вопрос придет, как и я