q, subreddit, author, kind, from, to, min_score, limit, page
GET
/v1/posts
q, subreddit, author, kind, from, to, min_score, limit, page
GET
/v1/comments
q, subreddit, author, kind, from, to, min_score, limit, page
GET
/v1/item
id
GET
/v1/subreddits
prefix, limit
GET
/v1/status
—
Sorgu parametreleri
Parametre
Değer / tür / aralık
q
text
subreddit
keyword
author
keyword
kind
post | comment
from
ISO date
to
ISO date
min_score
integer
limit
1–100
page
1–100
id
item ID
prefix
subreddit prefix
Yolları ve yetkilendirmeyi seçin
Temel adres https://api.redditscraping.com üzerindeki /v1 yollarıdır. GET /v1/search gönderi ve yorum araması, /v1/posts gönderi, /v1/comments yorum sorgulaması içindir. GET /v1/item?id=... tek bir kaydı kimliğiyle istemek için kullanılır. id parametresini posts veya comments sorgularına taşımayın. GET /v1/subreddits?prefix=... toplulukları adlarının başlangıcına göre sorgular; limit ile istenen sonuç sayısını sınırlandırabilirsiniz.
Veri alma isteklerinde Authorization: Bearer YOUR_API_KEY veya X-API-Key: YOUR_API_KEY başlıklarından birini gönderin. İkisi de desteklenir. Anahtarı URL parametresine eklemeyin veya herkese açık bir örneğe yerleştirmeyin. Hesap panelinin güvenli HttpOnly oturum çerezi, uygulamanızın API başlığı yerine geçmez. Hesap ve anahtar bu alan adına özgüdür; başka markanın anahtarıyla yetkilendirme beklemeyin.
GET /v1/status herkese açıktır ve ücretsizdir. Sabit hizmet kapsamı bilgisini ve HTTP uygulamasının yanıt verdiğini gösterir. Arşiv kaynağını, sorgu çalışmasını, kullanılabilir kayıtları veya hesap bakiyesini denetlemez. Bu nedenle önce status yanıtına bakıp ardından veri alma işleminizin mutlaka başarılı olacağını varsaymayın. Gerçek sorgunun kendi yanıtını ve hata durumunu ayrıca ele alın.
Filtreler, sayfalar ve sonuçların anlamı
Arama ve gönderi veya yorum sorgularında q, subreddit, author, kind, from, to, min_score, limit ve page parametrelerini ihtiyacınıza göre kullanın. kind değerleri post ve comment biçimindedir. Tarihleri UTC esaslı YYYY-MM-DD olarak verin; to belirtilen günün sonunu da kapsar. min_score alt puan sınırıdır, sıralama seçeneği değildir. parent_id ve link_id desteklenen sorgu filtreleri değildir.
Her istek maksimum 100 kayıt içerebilir ve sayfalama 1'den 100'e kadar çalışır. Arşiv belgelerinin sıralaması kronolojik veya puan sırasına göre değil, iç doküman sırasına göredir. Bu nedenle, tam bir arşiv çıkışı elde etmek için sayfaları ardışık olarak işlemek her zaman tüm eşleşen kayıtları garanti etmez. Sınırlı sayfalama, eksiksiz bir veri seti vaat etmez.
Toplam bilgisini sayfa sayısıyla karıştırmayın. eq tam eşleşme sayısını, gte alt sınırı, unknown veya null ise güvenilir bir toplam bulunmadığını belirtir. Tam toplam bile istemcinizin bütün kayıtları kaydettiğini kanıtlamaz. Topluluk özetlerindeki sayıları küresel olarak kesin kabul etmeyin. İşlemi kaydederken kullanılan filtreleri, sayfa numarasını ve alınan yanıtı birlikte izlemek, yarım kalan çalışmayı değerlendirmeye yardımcı olur.
Kayıtlar düz yapıdadır. Mevcut parent_id veya link_id alanlarından yararlanarak ilişkileri yerel olarak gruplamak isteğe bağlıdır; düz okuma, sayım veya kodlama için ağaç kurmak gerekmez. Alanların bulunması bütün konuşmanın veya ataların alınacağı anlamına gelmez. Eksik bağlamı tahminle tamamlamak yerine analizin sınırı olarak kaydedin. Yalnızca yanıtınızda gerçekten bulunan alanları kendi uygulama şemanıza eşleyin.
Hatalar ve istek maliyeti
HTTP 400 için parametre biçimini ve izin verilen değerleri kontrol edin. HTTP 401 eksik veya geçersiz anahtarı, HTTP 402 yetersiz bakiyeyi, HTTP 429 istek hızının aşılmasını belirtir. Bu durumları aynı yeniden deneme döngüsüne koymayın. Parametreyi veya anahtarı düzeltmeden aynı isteği tekrarlamak sorunu çözmez; hız sınırında ise yeni istekleri ertelemek gerekir.
Başarılı veri alma, boş sonuçta da bir kredi harcar. Geçersiz istekten kredi düşülmez; üst kaynak hatasında ayrılan kredi geri verilir. İstemci bağlantısının kopması ise sunucuda başarılı işlemi gizleyebilir. Böyle bir isteği başarıyla tekrarlamak ayrıca ücretlidir. Kaydetme ve yeniden deneme mantığını bu ayrımla tasarlayın; yalnızca istemcide görünen hatadan ücret alınmadığı sonucunu çıkarmayın.