Время, потраченное на отдельную страницу статьи - PullRequest
0 голосов
/ 04 января 2019

Я хочу найти время, которое пользователь проводит на странице статьи.

У меня есть страница, которая показывает список статей, когда вы нажимаете любую статью на этой странице, она показывает вам содержание этой статьи.

На данный момент у меня есть следующий код для маршрута статьи

@app.route("/post/<post_id>")
def post(post_id):
post = mongo.db.articles
sp = post.find_one({'_id': ObjectId(post_id)})
##################
userhistory = mongo.db.userhistory 
history = {'id' :ObjectId(post_id),'title':sp['Heading'],'User':current_user.user_json['email'],'DateTime':datetime.now()}
userhistory.insert(history)
############################################
#sp = post.find_one({'_id':post_id})
return render_template('post.html', title=post.title, post=sp)

Я хочу рассчитать время, которое пользователь тратит на эту конкретную статью, и добавить его в коллекцию MongoDB (история пользователей). Поэтому, когда пользователь закончил читать статью и щелкнул обратно в браузере, он должен рассчитать затраченное время.

Пожалуйста, помогите

1 Ответ

0 голосов
/ 04 января 2019

Это то, что вы должны вычислять на стороне клиента (например, javascript), а не на стороне сервера, потому что нет способа гарантировать, что клиент отправит еще один запрос на ваш сервер, когда он закончит его читать (перейдя к другая страница, закрытие браузера и т.д ...)

Существует простое решение: воспользуйтесь уже существующим аналитическим инструментом, таким как Google Analytics или Matomo (с открытым исходным кодом). Они предоставят вам статистику того, сколько времени пользователь проводит на определенной странице.

Если вы хотите реализовать это самостоятельно, вот отправная точка: Как измерить время, проведенное на странице?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...