2008-11-17 13 views
10

Şu anda bir tane diğerinden biraz daha eski bir sürüm olan iki MediaWikis var. Yinelenen sayfaları ortadan kaldırmadan, her ikisinin içeriğini birleştirmek istiyorum. Şimdiye kadar düşünebildiğim en iyi seçenek, bir wiki'nin tüm sayfalarını incelemek için bir bot (pywikipedia gibi) kullanmak ve bunları diğer sayfalara eklemeyi ve yinelenen sayfaları yeniden adlandırmayı denemektir.MediaWiki içeriğini birlikte birleştirme

Bu çözüm, bir süre sonra gerçekleştirilecek gibi görünüyor. Bunu daha habersiz yapmamın daha hoş bir yolu var mı? MediaWiki veritabanında doğrudan çok fazla çalışmamıştım, bu yüzden ne yaptığımı bilmeden çok uğraşmam.

cevap

8

MediaWiki, içeriği taşımak için kullanabileceğiniz import ve export özelliklerine sahiptir. Mevcut sayfaların geçmişlerini birleştirir (bkz. Içe aktarma bağlantısı). Ancak, aynı adla iki farklı sayfanın çakışmasını işlemez, böylece sayfaları kendiniz hareket ettirmek zorunda kalırsınız. Üste | MediaWiki page table tanımında görebildiğim kadarıyla, yinelenen sayfaları doğrudan SQL'de bulabilir ve yeniden adlandırabilirsiniz, ancak pywikipedia da çalışmalıdır (ancak "doğru" sayfa hareketlerinden kaynaklanan yönlendirmeleri silmeniz gerekir. aksi halde diğer wiki'den içe aktarılmış sayfalarla uğraşırlar).

+0

Katılıyorum - birkaç yüz yinelenen sayfa olmadıkça, XML içe aktarma/dışa aktarma özelliğini kullanmanızı öneririz. – HanClinto

+0

İçe Aktarım özelliğini gördüğüm kadarıyla, küçük dosyalar için yararlıdır, ancak daha büyük kümeler için kullanışlı değildir. Yinelenen sayfaların kullanıcı tarafından ele alınması gerekiyor ve özelleştiren içe aktarma seçenekleri sınırlı görünüyor. Şu anda, pywikipedia en iyi seçenek olmak istiyor ... – spelchec

İlgili konular