Front-end part
I have an AJAX request which is trying to GET data from my back-end handle every second. 
If there is any data, I get this data, add it to my HTML page (without reloading), and continue pulling data every second waiting for further changes.
Back-end part
I parse web-pages every minute with Celery. 
Extract data from them and pass it to an array (that is a trigger for AJAX request that there is new data).
Question
It seems to me that there is another solution for this issue.
I don't want to ask for data from JS to back-end. I want to pass data from back-end to JS, when there are any changes. But without page reload.
How can I do this?
try to use socketio, the backend create an event with data on socketio and your frontend receives the event and download the data 
i resolve a similar problem in this way. i call the backend only when a socketio event was create from the backend.
you must setup a socketio server with nodejs,somewhere
Push data from backend (python) to JS