طلب واجهة برمجة تطبيقات الفئة يقوم بتنزيل جميع المواضيع

أقوم بإنشاء تحليلات حول استخدام منتدانا، وأقوم بتنزيل معلومات حول مواضيع كل فئة.

ومع ذلك، فإن الطلب لا يسحب جميع المواضيع في كل مرة. لقد لاحظت هذا فقط لأنه سبق له سحب بعض المواضيع التي اختفت الآن من أحدث تقرير لدينا.

مثال:

الموضوع موجود عندما أفتح صفحة الفئة في المتصفح.

الكود الذي أستخدمه:

from dotenv import load_dotenv
import os
import requests

load_dotenv()

headers = {
    "Content-Type": "application/json",
    "Api-Username": os.environ["USERNAME"],
    "Api-Key": os.environ["API_KEY"],
}

method = "GET"
url = "https://forum.aragon.org/c/proposals-for-main-dao/50.json"

response = requests.request(method, url, headers=headers)
topics = response.json()["topic_list"]["topics"]

found_topics = list()
for topic in topics:
    found_topics.append(topic["id"])

print(sorted(found_topics))

{topic: topic in found_topics for topic in [3519, 3528]}

>>>
[3075, 3224, 3299, 3312, 3449, 3472, 3474, 3526, 3554, 3555, 3557, 3583, 3586, 3592, 3613, 3624, 3626, 3659, 3674, 3677, 3680, 3694, 3695, 3699, 3702, 3710, 3716, 3720, 3725, 3737]

{3519: False, 3528: False}

لماذا يحدث هذا، وكيف يمكنني إصلاحه؟

إذًا، يجب عليك استخدام المكون الإضافي لاستكشاف البيانات.

راجع Discourse Data Explorer و How to run Data Explorer queries with the Discourse API.

إعجاب واحد (1)

شكرًا لك، ولكن حاليًا لا يمكننا تثبيت هذا المكون الإضافي. هل يمكننا فعل أي شيء لإصلاح واجهة برمجة التطبيقات؟

هذه إضافة رسمية ومستقرة ويتم صيانتها جيدًا، ما الذي يمنعك من تثبيتها؟
يستخدم واجهة المستخدم نظام ترقيم الصفحات لسحب كل مجموعة من المواضيع. هذا هو السبب على الأرجح لعدم تمكنك من رؤيتها كلها.
تحقق من الاستعلام الذي يرسله متصفحك للحصول على أمثلة لكل استدعاء (انظر علامة التبويب الشبكة).
ومع ذلك، كما يشير @pfaffman بشكل صحيح، هذه ليست الطريقة الأنسب للحصول على البيانات للتحليلات لأنها محسّنة لواجهة المستخدم.

إعجاب واحد (1)