def load_topics(session, page):
print(f"[Tópicos] Carregando página {page}")
r = session.get(f"https://{hostUrl}/latest.json?page={page}")
if r.status_code != 200:
return []
return [{"id": t["id"], "posts_count": t["posts_count"]} for t in r.json()["topic_list"]["topics"]]
timings = {
str(i): 60000
for i in range(1, post_count + 1)
}
payload = {
"topic_id": topic_id,
"topic_time": post_count * 60000,
"timings": timings
}
# Use json=payload para enviar como application/json
r = session.post(url, json=payload, headers = {
"X-CSRF-Token": csrf,
"User-Agent": "Mozilla/5.0",
"X-Requested-With": "XMLHttpRequest",
"Content-Type": "application/json"
}
)
Posso dizer com 100% de certeza que esta afirmação é verdadeira!
A contagem de posts lidos foi atualizada várias vezes, mas a de tópicos lidos não. Eles estão em intervalos diferentes? Já se passaram ~20 horas e a contagem de posts lidos continua aumentando, mas a de tópicos lidos não.
Eu só quero tentar fazer a engenharia reversa dos endpoints! É legal.
Acho que devo esperar um pouco antes de voltar e ver se os valores mudaram.
@Canapin, eu não sou o proprietário do site. Se eu ainda puder acioná-lo apenas estando logado como um usuário normal, me diga o método para fazer isso.
@Moin
O site que estou usando tem isso desativado e sempre retornará “Uma lista de membros da comunidade mostrando sua atividade será exibida aqui. Por enquanto, a lista está vazia porque sua comunidade é muito nova!”
No caso dele, você não pode. Ser um usuário comum não é ideal para fazer a engenharia reversa da API.
Se puder, tente uma instalação de desenvolvimento local ou uma instalação de produção em um VPS barato (um servidor de 3-4 dólares serve), já que o Discourse não exige mais um nome de host ou SMTP.