API:Query/tr

modülü, belirli bir sayfanın vikimetini, bir sayfa grubunun bağlantıları ve kategorileri veya için gereken anahtar gibi bir viki ve içinde depolanan veriler hakkında bilgi almanıza olanak tanır.



API belgesi


Sorgu modülleri
Sorgu modülünde üç tür alt modül vardır (sorgu modülleri olarak da adlandırılır):


 * Viki ve giriş yapan kullanıcı hakkında.
 * Sayfa revizyonları ve içerik dahil olmak üzere sayfaların.
 * Belirli ölçütlerle eşleşen sayfaların.

Örnekler


Örnek 1: Sayfaları belirtme
Meta ve liste sorgu modüllerinden farklı olarak, tüm özellik sorgu modülleri, aşağıdaki yollardan biriyle belirtilebilen bir dizi sayfada çalışır:


 * parametresini kullanarak ada göre, ör..
 * parametresini kullanarak sayfa kimliğine göre, ör..
 * parametresini kullanarak revizyon kimliğiyle, ör. . Çoğu sorgu modülü, düzeltme kimliğini ilgili sayfa kimliğine dönüştürür. Revizyon kimliğinin kendisini yalnızca  kullanır.
 * Bir jeneratör kullanma.



Yanıt


Örnek 2: Başlık normalizasyonu
Başlık normalizasyonu sayfa başlıklarını kurallı biçimlerine dönüştürür.

Bu, ilk karakteri büyük harfe çevirme, alt çizgileri boşluklarla değiştirme ve ad alanını o viki için tanımlanan yerelleştirilmiş forma değiştirme anlamına gelir.



Yanıt


Örnek 3: Eksik ve geçersiz başlıklar
Mevcut olmayan veya geçersiz başlıklarda yanıtta  veya   bir özellik ayarlanmış olacaktır.

Sayısal dizi anahtarlarını destekleyen çıkış biçimlerinde, eksik ve geçersiz başlıkların negatif sayfa kimlikleri olacaktır.

In some cases, a title can be viewed by a user but cannot be accessed by the API, such as pages that mirror content from another wiki. These titles will have a  attribute set in the response.



Yanıt


Örnek 4: Devam eden sorgular
Bir sorguya yanıt olarak tüm veriler döndürülmediğinde, daha fazla veri olduğunu belirten  niteliği olacaktır.



Yanıt
Daha fazla veri almak için, değerlerini orijinal isteğe ekleyin.

Response


Örnek 5: Toplu işlem tamamlama
API, geçerli öğe grubuna ilişkin tüm verilerin döndürüldüğünü belirtmek için  öğesi döndürür.

Aşağıdaki örnek sorguya yanıt olarak, üç görüntünün her biri için tüm verilerin döndürüldüğünü göstermek için  eklenmiştir.

Bir sonraki devam sonraki 3 resim kümesi için veri döndürmeye başlayacaktır.



Yanıt


Örnek 6: Jeneratörler
Bir dizi sayfa hakkında veri almak istiyorsanız jeneratörleri kullanın.

Örneğin,  sorgulamak ve sonra döndürülen tüm sayfalara ayarlanmış   ile tekrar sorgulamak yerine belirli bir kategorideki sayfalar hakkında veri almak için, iki API çağrısını   kullanarak bir araya getirin.

Liste modülünü jeneratör olarak kullanırken, sayfaları belirtmenize gerek yoktur.

Ancak, bir özellik modülü için, jeneratörün üzerinde çalışacağı sayfaları belirtin.

Örneğin, ana sayfadan bağlantı verilen tüm sayfaları yüklemek için  kullanın.

Bir jeneratöre iletilen parametrelerin önüne bir  eklenmelidir. Örneğin,  kullanırken,   yerine   kullanın.

Aşağıdaki örnek sorgu "Ba" ile başlayan ana ad alanındaki ilk üç sayfanın bağlantılarını ve kategorilerini alır.



Continuing queries
Very often you will not get all the data you want in one API query. When that happens the API result indicates there is more data.

Because there are more data matching the query, the API result includes a  element. If you want further data, you would add its values (in the example,  and  ) to the original request to get the next set of results. You continue to do this until an API result does not have a  element, indicating there are no more data matching the query.

Here is Python code showing how to iterate over query results (using the python requests lib). Note you should not manipulate or depend on any specifics of the values returned inside the  element, as they may change.

batchcomplete
When you make an API request using a generator together with properties, the API result may signal to continue because there are more properties to retrieve for the pages so far, or because there are more pages from the generator, or both. From version 1.25 onwards, the API returns a  element to indicate that all data for the current "batch" of pages has been returned. This can be useful to avoid building a combined result set for thousands of pages when using a generator together with prop modules that may themselves need continuation.

Backwards compatibility of continue
From MediaWiki 1.21 to 1.25, it was required to specify  (i.e. with an empty string as the value) in the initial request to get continuation data in the format described above. Without doing that, API results would indicate there is additional data by returning a  element, explained in Raw query continue. Prior to 1.21, that raw continuation was the only option.

If your application needs to use the raw continuation in MediaWiki 1.26 or later, you must specify  to request it.



Olası uyarılar


Parametre geçmişi

 * v1.21:  tanıtıldı
 * v1.24:  tanıtıldı (not ham devamı v1.26'ya kadar varsayılan davranıştır)

<span id="Additional_notes">

Ek notlar

 * Başlıkları  veya   ile belirtmek sorgu başına 50 başlık veya   hakkına sahip olanlar için 500 başlık ile sınırlıdır.
 * Tek bir istekte ihtiyacınız olanı elde etmek için birden çok sorgu modülünü birlikte kullanın, ör..
 * Generators always pass page titles to the query module. Unlike lists (which may include additional data by default), generators should not output any information themselves, unless when explicitly requested via the generator module's query parameters.

<span id="Resolving_redirects">

Yönlendirmeleri çözme
Yönlendirmeler otomatik olarak çözülebilir, böylece belirli bir başlık yerine bir yönlendirme hedefi döndürülür. Var olduğunda, her zaman  ve   öznitelikleri içerirler ve belirli bölümlere işaret eden yönlendirmeler için   özniteliği içerebilirler.

Hem normalleştirme hem de yönlendirme gerçekleşebilir. Birden çok yönlendirme durumunda, tüm yönlendirmeler çözülecek ve dairesel bir yönlendirme durumunda, 'sayfalar' bölümünde bir sayfa olmayabilir (ayrıca aşağıda bakın). Yönlendirme çözünürlüğü,  parametresiyle veya revers üreten bir jeneratörle birlikte kullanılamaz; bunu yapmak bir uyarı oluşturur ve belirtilen revids için yönlendirmeleri çözmez.

Aşağıdaki örnekler  parametresinin nasıl çalıştığını gösterir.

<span id="See_also">

Ayrıca bakınız

 * - Hızlı başlangıç kılavuzu.
 * -  parametresinin nasıl kullanılacağı hakkında bilgi içerir.