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
Here is an unofficial, short Document Type Definition version of the format. If you don't know what a DTD is just ignore it.

Processing XML export
Many tools can process the exported XML. If you process a large number of pages (for instance a whole dump) you probably won't be able to get the document in main memory so you will need a parser based on SAX or other event-driven methods.

You can also use regular expressions to directly process parts of the XML code. This may be faster than other methods but not recommended because it's difficult to maintain.

Please list methods and tools for processing XML export here:

Parse Wiki Text (crates.io) is a Rust crate to parse wiki text into a tree of elements.
 * Parse MediaWiki Dump (crates.io) is a Rust crate to parse XML dumps.
 * Parse::MediaWikiDump is a perl module for processing the XML dump file.
 * m:Processing MediaWiki XML with STX - Stream based XML transformation
 * The m:IBM History flow project can read it after applying a small Python program, export-historyflow-expand.py.

Details and practical advice

 * To determine the namespace of a page you have to match its title to the prefixes defined in
 * Possible restrictions are
 * - protected pages

Why to export
Why not just use a dynamic database download?

Suppose you are building a piece of software that at certain points displays information that came from Wikipedia. If you want your program to display the information in a different way than can be seen in the live version, you'll probably need the wikicode that is used to enter it, instead of the finished html.

Also if you want to get all of the data, you'll probably want to transfer it in the most efficient way that's possible. The Wikimedia servers need to do quite a bit of work to convert the wikicode into html. 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