Help:Export/tr

Viki sayfaları özel bir XML biçiminde içe aktarma yüklemesi başka bir MediaWiki kurulumuna aktarılabilir (bu işlev hedef vikide etkinleştirildiyse ve kullanıcı orada bir hizmetli ise) veya içeriği içeriği analiz etmek için başka şekilde kullanın. Ayrıca sayfalar dışında başka bilgileri dışa aktarma ve içe aktarmalarda aktarma için m:Sendikasyon beslemelerine bakın.

Nasıl dışa aktarılır
Sayfaları dışa aktarmanın en az dört yolu vardır:


 * Special:Export sayfasındaki kutuya maddelerin adını yapıştırın veya kullanın.
 * Yedek betiği  tüm viki sayfalarını bir XML dosyasına döker.   yalnızca MediaWiki 1.5 veya daha yeni sürümlerinde çalışır. Bu betiğini çalıştırmak için sunucuya doğrudan erişiminizin olması gerekir. Wikimedia projelerinin dökümü düzenli olarak https://dumps.wikimedia.org/ sağlanıyor.
 * Not: dumpBackup.php dosyasını başarıyla çalıştırmak için AdminSettings.php dosyasını yapılandırmanız gerekebilir. Daha fazla bilgi için MediaWiki sayfasına bakın.
 * OAI-PMH - belirli bir zamandan beri değiştirilen sayfaları düzenli olarak getirmek için bir arayüz vardır. Wikimedia projeleri için bu arayüz herkese açık değildir; sayfasına bakın. OAI-PMH, dışa aktarılan makalelerin çevresinde bir sarmalayıcı biçimi içerir.
 * Python çerçevesini kullanın. Bu burada açıklanmayacak.

Varsayılan olarak bir sayfanın yalnızca geçerli sürümü eklenir. İsteğe bağlı olarak tarih, saat, kullanıcı adı ve düzenleme özeti içeren tüm sürümleri alabilirsiniz. İsteğe bağlı olarak, doğrudan veya dolaylı olarak adlandırılan tüm şablonların en son sürümü de dışa aktarılır.

Ayrıca SQL veritabanını kopyalayabilirsiniz. Veritabanının dökümleri MediaWiki 1.5'ten önce bu şekilde kullanıma sunuldu ve burada daha fazla açıklanmayacak.

'Special:Export' kullanımı
Örneğin, bir ad alanının tüm sayfalarını dışa aktarmak için.

1. Dışa aktarılacak sayfaların adlarını alın
Bir örnek daha iyi hissediyorum, çünkü aşağıdaki açıklama oldukça net değil.


 * 1) Special:Allpages sayfasına gidin ve istediğiniz maddeyi/dosyayı seçin.
 * 2) Sayfa adları listesini bir metin düzenleyicisine kopyalayın
 * 3) Tüm sayfa adlarını ayrı satırlara yerleştirin
 * 4) Oluşturulan sayfanın bir kısmını istenen adlarla kopyalayıp bunu MS Word'e yapıştırırsanız bunu nispeten hızlı bir şekilde elde edebilirsiniz - biçimlendirilmemiş metin olarak özel macunu kullan - sonra değiştirme işlevini (CTRL+h) açın, ^t bul, Değiştir ile ^p girip Tümünü Değiştir düğmesine basın. (Bu, sayfa adları arasındaki sekmelere dayanır; bunlar genellikle sayfa adlarının html kaynağındaki td etiketlerinin içinde olmasının sonucudur.)
 * 5) Metin düzenleyicisi Vim ayrıca satır sonlarını düzeltmenin hızlı bir yolunu da sağlar: tüm listeyi yapıştırdıktan sonra, tüm sekmeleri satır başlarıyla değiştirmek için :1,$s/\t/\r/g komutunu ve ardından :1,$s/^\n//g komutunu çalıştırın. Yalnızca bir satırsonu karakteri içeren her satırı kaldırın.
 * 6) Diğer bir yaklaşım, biçimlendirilmiş metni HTML'yi açığa çıkaran herhangi bir düzenleyiciye kopyalamaktır. Tüm   ve   etiketlerini kaldırın ve tüm   etiketlerini    ve   etiketlerini    ile değiştirin, HTML daha sonra gerekli biçime ayrıştırılacaktır.
 * 7) Sunucunuza kabuk ve MySQL erişiminiz varsa, bu betiğini kullanabilirsiniz:

mysql -umike -pmikespassword -hlocalhost wikidbname select page_title from wiki_page where page_namespace=0 EOF

''Not, mikrofon ve mikrofon parolası kendinizinkiyle değiştirin. Ayrıca, bu örnek wiki_ önekine sahip tabloları gösterir.''


 * 1) Seçili ad alanı ana ad alanı değilse ad alanını sayfa adlarının önüne ekleyin (ör. 'Help:İçindekiler').
 * 2) Diğer ad alanları için yukarıdaki adımları tekrarlayın (ör. Category:, Template:, vb.)

PostgreSQL veritabanları için benzer bir betik şuna benzer:

$ psql -At -U wikiuser -h localhost wikidb -c "select page_title from mediawiki.page"

''Dikkat edin, viki kullanıcı iken kendinizinkiyle değiştirin, veritabanı sizden bir parola isteyecektir. Bu örnek, wiki_ öneki olmadan ve tablo adının bir parçası olarak belirtilen ad alanına sahip tabloları gösterir.''

Alternatif olarak, Python yüklü bir makineye erişimi olanlar için hızlı bir yaklaşım:


 * 1) Special:Allpages sayfasına gidin ve istenen ad alanını seçin.
 * 2) Tüm web sayfasını index.php.htm olarak kaydedin. Bazı vikilerde AllPages'ın bir ekranına sığamayacak kadar çok sayfa olabilir; bu sayfaların her birini kaydetmeniz gerekecek.
 * 3) export_all_helper.py ile kaydedilen dosyayla aynı dizinde çalıştırın. Çıkışı bir dosyaya yönlendirmek isteyebilirsiniz;  örn.   "main" adlı bir dosyaya göndermek için.
 * 4) Betik tarafından verilen sayfa adlarını kaydedin.

2. Dışa aktarımı gerçekleştirin

 * Special:Export sayfasına gidin ve tüm sayfa adlarınızı boş satır olmadığından emin olarak metin kutusuna yapıştırın.
 * "Sorguyu gönder" düğmesine tıklayın
 * Elde edilen XML'yi tarayıcınızın kaydetme özelliğini kullanarak bir dosyaya kaydedin.

ve son olarak...


 * XML dosyasını bir metin düzenleyicide açın. Hata mesajlarını kontrol etmek için en alta kaydırın.

Artık bu XML dosyasını bir içe aktarma gerçekleştirmek için kullanabilirsiniz.

Tam geçmişi dışa aktarma
Special:Export arayüzündeki bir onay kutusu, maddelerin tam geçmişinin mi (bir maddenin tüm sürümleri) yoksa en son sürümünün mi dışa aktarılacağını seçer. En fazla 100 revizyon iade edilir; içinde ayrıntılı verdiği gibi diğer revizyonlar talep edilebilir.

Dışa aktarma biçimi
Aldığınız XML dosyasının biçimi her yönden aynıdır. https://www.mediawiki.org/xml/export-0.10.xsd adresinde XML Şeması'nda kodlanmıştır. Bu biçim, bir web tarayıcısında görüntülemek için tasarlanmamıştır. Bazı tarayıcılar, seçili parçaları görüntülemek veya gizlemek için size "+" ve "-" bağlantılarıyla güzel yazdırılmış XML gösterir. Alternatif olarak, XML kaynağı, tarayıcının "kaynağı gör" özelliği kullanılarak veya XML dosyasını yerel olarak kaydettikten sonra, bir programla görüntülenebilir. Doğrudan XML kaynağını okursanız, gerçek vikimetin dosyasını bulmak zor olmayacaktır. Özel bir XML düzenleyici kullanmıyorsanız "<" ve ">" &amp;lt; ve &amp;gt;, XML etiketleriyle çakışmayı önlemek için; belirsizliği önlemek için "&amp;", "&amp;amp;" olarak kodlanır.

Mevcut sürümde dışa aktarma formatı, viki işaretlemesinin XML değişimini içermiyor (daha eski bir teklif için Vikipedi DTD sayfasına bakın). Maddeyi düzenlerken yalnızca vikimetin alırsınız.

DTD
Biçimin resmi olmayan, kısa Document Type Definition sürümü. Bir DTD'nin ne olduğunu bilmiyorsanız, onu görmezden gelin.

XML dışa aktarımı işleme
Birçok araç dışa aktarılan XML'i işleyebilir. Çok sayıda sayfayı işlerseniz (örneğin tam bir döküm) büyük olasılıkla belgeyi ana bellekte alamayacaksınız, bu nedenle SAX ile dayalı bir ayrıştırıcıya ihtiyacınız olacak veya diğer olay odaklı yöntemlenir.

XML kodunun bölümlerini doğrudan işlemek için normal ifadeleri de kullanabilirsiniz. Bu, diğer yöntemlerden daha hızlı olabilir, ancak bakımı zor olduğu için önerilmez.

Lütfen XML dışa aktarımını işlemek için yöntemleri ve araçları burada listeleyin:

m:IBM Geçmiş akış projesi, küçük bir Python programı, export-historyflow-expand.py uyguladıktan sonra onu okuyabilir.
 * Parse MediaWiki Dump (crates.io), XML dökümlerini ayrıştırmak için bir Rust sandığıdır. Parse Wiki Text (crates.io), viki metnini bir öğe ağacına ayrıştırmak için kullanılan bir Rust sandığıdır.
 * Parse::MediaWikiDump, XML döküm dosyasını işlemek için bir perl modülüdür.
 * m:MediaWiki XML'i STX ile işleme - Akış tabanlı XML dönüşümü

Ayrıntılar ve pratik tavsiyeler

 * Bir sayfanın ad alanını belirlemek için başlığını şurada tanımlanan öneklerle eşleştirmeniz gerekir:
 * Olası kısıtlamalar:
 * - korunan sayfalar

Neden dışa aktarılmalı
Neden dinamik bir veritabanı indirmesi kullanmıyorsunuz?

Vikipedi'den gelen bilgileri belirli noktalarda görüntüleyen bir yazılım oluşturduğunuzu varsayalım. Programınızın bilgileri canlı sürümde görünenden farklı bir şekilde görüntülemesini istiyorsanız, muhtemelen bitmiş html yerine onu girmek için kullanılan vikikoda ihtiyacınız olacaktır.

Ayrıca, tüm verileri almak istiyorsanız, muhtemelen mümkün olan en verimli şekilde aktarmak isteyeceksiniz. Wikimedia sunucularının, vikikodu HTML'ye dönüştürmek için epeyce çalışması gerekir. That's time consuming both for you and for the Wikimedia servers, so simply spidering all pages is not the way to go.

To access any article in XML, one at a time, link to:

Special:Export/Title_of_the_article