Wikipedia'da bir makalenin belirli bir bölümünü kimin yazdığını nasıl öğrenebilirim?


14

Sürüm kontrol sistemleri genellikle bu özelliğe "birini suçlamak" adını verir. Her satır için, onu kimin ne zaman değiştirdiğini gösterir.

Güncelleme: Binlerce düzenlemeye sahip makaleler için bir çözüm arıyorum (yani sürüm geçmişinde gezinmek ve her birini kontrol etmek pratik değildir).


1
WikiBlame kullanımıyla ilgili özel talimatlar (belirli bir cümleyi kimin yazdığını bulmak için) burada bulunabilir: webapps.stackexchange.com/questions/35906/…
Anderson Green

Yanıtlar:


4

Eğer View History makalenin bağlantısına makalede yapılan değişikliklerin listesini, hangi tarihte ve kime göre görebilirsiniz. Değişiklik açıklamasının kısa bir özeti de görüntülenir. Daha sonra Compare selected versionmetni karşılaştırmak için düğmeyi tıklatabilirsiniz .

Ne yazık ki, farkında değilim belirli bir satır, cümle veya paragrafta kimin değişiklik yaptığını doğrudan görmenizi sağlayan Suçlama özelliğinin .

EDIT: Greg Hewill'in sitesini kontrol etmek isteyebilirsiniz , (görünüşe göre) sadece böyle bir suçlama özelliği üzerinde çalışıyor.


Kısa makaleler için bu basittir. Ancak, yüzlerce veya binlerce düzenleme içeren bir makaleniz olduğunda, çok daha zor hale gelir. Ben tam tersini arıyorum. Bir satır veriyorsunuz ve kullanıcıya anlatıyor.
Senseful

Gönderdiğiniz bağlantı tam olarak aradığım şey.
Haziran'da Senseful

İhtiyacınız olanı bulduğunuza sevindim: D
LBushkin


0

Bunu, "View History"her wikipedia makalesinin sağ üst köşesinde bulunan öğesini tıklayarak yapabilirsiniz . Burada bir makalenin revizyonlarının bir listesini bulacaksınız. Her kullanıcı tarafından özel olarak taahhüt edilmiş olmak istiyorsanız, "cur"her bir düzeltmenin yanındaki simgesini tıklayabilirsiniz ve wikipedia neyin değiştiğini vurgulayacaktır.


Binlerce sürümü olan makaleler için bu yöntemin neden iyi olmadığını açıklayan soruyu güncelledim.
Senseful

OpenBSDWiki'nin cevabının doğru olduğu anlaşılıyor. Aradığınız bu değil mi?
Oren Hizkiya

0

Bunu yapmanın bir yolu, makale geçmişini dışa aktarmak ve sonra gibi yerel bir araç kullanarak revizyonları işlemektir git blame. Bu bir komut dosyası kullanılarak yapılabilir.

Makale geçmişini aktarmak için kullanmakSpecial:Export özellikle: https://en.wikipedia.org/w/index.php?title=Special:Export&history=1&action=submit&pages=Blinkenlights.

Suçu oluşturmak için önce revizyonları geçici bir git deposuna ekleyin (Python 3'te gösterilmiştir):

import tempfile
import subprocess
with tempfile.TemporaryDirectory() as repo:
    os.chdir(repo.name)
    subprocess.check_call(['git', 'init'])

Daha sonra dışa aktarılan geçmiş XML'sini indirin, benzer bir şeyle ayrıştırın lxml.etreeve revizyonlar (xpath //revision) üzerinde döngü yapın . Her revizyon için metni bir dosyaya yazın (diyelim article.wiki), yazarı okuyun ve çalıştırın

subprocess.check_call(['git', 'commit', '-a', '-m', 'blah', '--author=' + str(author)])

Repoya tüm revizyonlar eklendikten sonra git blame article.wiki , her satırın yazarını görmek için .

Not: Special:Exportdışa aktarılan düzeltmelerin sayısını kısıtlayabilir, bu nedenle uzun geçmişi olan sayfalarda XML'i birden çok kez getirmeniz gerekebilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.