Ich möchte die Anzahl der aktiven Benutzer über die API erhalten, genau wie beim Export. Über welche API kann ich diese abrufen?
Aktiv in welchem Sinne: täglich, wöchentlich, monatlich oder jährlich?
Um alle aktiven Benutzer zu erhalten, also die Gesamtzahl der Benutzer
Sie meinen also alle Online-Benutzer, d. h. diejenigen, die sich zu diesem Zeitpunkt gerade im Forum befinden?
was ist mit /admin/users/list/active.json?
vielleicht hilft dieses Dokument?
https://docs.discourse.org/#tag/Users/operation/adminListUsers
siehe auch
Nein, es ist die Gesamtzahl der aktiven Nutzer der Website, d. h. wie viele Personen die Website derzeit hat.
Sie können die Daten von {site url}/about.json abrufen und den Wert des Schlüssels users_count erhalten. Zum Beispiel auf Meta:
{
"about": {
"stats": {
"topics_last_day": 16,
"topics_7_days": 99,
"topics_30_days": 553,
"topics_count": 60801,
"posts_last_day": 549,
"posts_7_days": 3352,
"posts_30_days": 19273,
"posts_count": 1722045,
"users_last_day": 23,
"users_7_days": 132,
"users_30_days": 713,
"users_count": 61086, // Dieser Wert hier!
"active_users_last_day": 535,
"active_users_7_days": 1219,
"active_users_30_days": 2518,
"likes_last_day": 169,
"likes_7_days": 1547,
"likes_30_days": 10833,
"likes_count": 1641538,
"participating_users_last_day": 119,
"participating_users_7_days": 373,
"participating_users_30_days": 912,
"visitors_last_day": 2161,
"visitors_7_days": 4468,
"visitors_30_days": 8669,
"eu_visitors_last_day": 653,
"eu_visitors_7_days": 1206,
"eu_visitors_30_days": 2022,
"chat_messages_last_day": 72,
"chat_messages_7_days": 707,
"chat_messages_30_days": 3015,
"chat_messages_previous_30_days": 3621,
"chat_messages_count": 99670,
"chat_users_last_day": 8,
"chat_users_7_days": 27,
"chat_users_30_days": 67,
"chat_users_previous_30_days": 87,
"chat_users_count": 925,
"chat_channels_last_day": 3,
"chat_channels_7_days": 8,
"chat_channels_30_days": 39,
"chat_channels_previous_30_days": 36,
"chat_channels_count": 3117
},
"description": "Erfahren Sie mehr über Discourse, die Open-Source-Forum-Software der nächsten Generation, und diskutieren Sie darüber.",
"extended_site_description": "<p>Ein Ort für die Discourse-Community, um sich zu treffen, Fragen zu stellen, sich gegenseitig zu unterstützen und sehr geschätztes Feedback zu geben.</p>",
"banner_image": "https://d11a6trkgmumsb.cloudfront.net/original/4X/8/3/5/835377a3ea23f75e6c6c08ed3d7d606a0f2c3e72.jpeg",
"site_creation_date": "2016-02-17T07:50:40.228Z",
"title": "Discourse Meta",
"locale": "en",
"version": "3.6.0.beta1-dev",
"https": true,
"can_see_about_stats": true,
"contact_url": "",
"contact_email": "team@discourse.org",
"moderator_ids": [
127856,
112395,
8307,
8571,
140271
],
"admin_ids": [],
"category_moderators": []
}
}
die Zahl users_count ist 61086.
Ja, ich verwende derzeit die API hier, um Benutzerdaten zu erhalten, aber sie stimmt nicht mit der Gesamtzahl von users_count auf Meta: {site url}/about.json überein. Ich möchte die Ursache analysieren.
Dies ist die Gesamtzahl der Benutzer, aber ich möchte die Benutzerliste erhalten, da die Anzahl der Benutzer, die ich über Discourse API Docs erhalte, nicht mit der users_count von {site url}/about.json übereinstimmt, es fehlen viele Benutzer.
Hallo, was ist mit diesem API-Aufruf (Discourse Docs)? Zum Beispiel ruft https://meta.discourse.org/directory_items.json?period=all&order=likes_received alle Benutzer ab, sortiert nach Likes. Sie können &page=2, &page=3 am Ende hinzufügen, um weitere Seiten mit Benutzern zu erhalten.
Haben Sie den page-Parameter verwendet, um alle Seiten abzurufen?
Ja, die seitenweise Abfrage wird fortgesetzt, bis keine Daten mehr zurückgegeben werden. Wenn es beispielsweise insgesamt 34.000+ gibt, werden nur 30.000+ abgerufen. Ich kann nicht unterscheiden, welche Benutzer über die API-Schnittstelle nicht abgerufen werden können.
Was wäre, wenn Sie jede Seite durchlaufen würden (vielleicht mit etwas wie Python), um die Seitenzahl zu erhöhen und die Daten abzurufen, bis keine Daten mehr abzurufen sind? Würde das funktionieren?
Ich denke, die Verwendung einer Data Explorer-Abfrage wäre der einfachste Weg, die gesamte Benutzerliste zu erhalten.
Ja, es wurde bereits bearbeitet. Die vorherigen Unterschiede ergaben sich, weil bei der Abfrage von Daten über die API Standardbedingungen verwendet wurden, die nur aktive Benutzer abrufen.