¿Cómo puedo averiguar quién escribió una determinada sección de un artículo en Wikipedia?

14

Los sistemas de control de versiones suelen llamar a esta característica "culpar a alguien". Para cada línea, muestra quién lo modificó y cuándo.

Actualización: también estoy buscando una solución para artículos con miles de ediciones (es decir, navegar por el historial de versiones y verificar cada una no es práctico).

Sensato
fuente
1
Las instrucciones específicas para usar WikiBlame (para averiguar quién escribió una frase específica) se pueden encontrar aquí: webapps.stackexchange.com/questions/35906/…
Anderson Green el

Respuestas:

4

Si hace clic en el View Historyenlace de un artículo, puede ver la lista de cambios realizados en el artículo, en qué fecha y por quién. También se muestra un breve resumen de la descripción del cambio. Luego puede hacer clic en el Compare selected versionbotón para comparar texto.

Desafortunadamente, no conozco una función de Culpa que le permita ver directamente quién realizó los cambios en una línea, oración o párrafo en particular.

EDITAR: es posible que desee consultar el sitio de Greg Hewill , él (aparentemente) está trabajando en una función de culpa.

LBushkin
fuente
Esto es simple para artículos cortos. Sin embargo, cuando tiene un artículo con cientos o miles de ediciones, se vuelve mucho más difícil. Estoy buscando lo contrario. Le das una línea y te dice al usuario.
Senseful
Ese enlace que publicaste es exactamente el tipo de cosas que estaba buscando.
Senseful
Me alegra que hayas encontrado lo que necesitabas: D
LBushkin
0

Puede hacer esto haciendo clic "View History"en ubicado en la esquina superior derecha de cada artículo de wikipedia. Allí encontrará una lista de las revisiones de un artículo. Si desea que cada usuario se haya comprometido específicamente, puede hacer clic "cur"junto a cada revisión y wikipedia resaltará lo que se modificó.

Oren Hizkiya
fuente
Actualicé la pregunta que explica por qué este método no es bueno para artículos con miles de versiones.
Senseful
Parece que la respuesta de OpenBSDWiki es correcta entonces. ¿No es eso lo que estás buscando?
Oren Hizkiya
0

Una forma de hacerlo es exportar el historial del artículo y luego procesar las revisiones utilizando una herramienta local como git blame. Esto podría hacerse usando un script.

Para exportar el historial de artículo, useSpecial:Export , en particular: https://en.wikipedia.org/w/index.php?title=Special:Export&history=1&action=submit&pages=Blinkenlights.

Para generar la culpa, primero agregue las revisiones a un repositorio temporal de git (que se muestra en Python 3):

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

Luego descargue el XML del historial exportado, analícelo con algo parecido lxml.etreey repita las revisiones (xpath //revision). Para cada revisión, escriba el texto en un archivo (digamos article.wiki), lea al autor y ejecute

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

Después de agregar todas las revisiones al repositorio, ejecute git blame article.wikipara ver el autor de cada línea.

Nota: Special:Exportpuede restringir el número de revisiones exportadas, por lo que en páginas con un historial largo puede que tenga que recuperar el XML varias veces.

Caracol mecánico
fuente