Wikipedia:Bot/Autorizaciones
En esta página se votan y archivan las autorizaciones que son necesarias para los usuarios bot que vayan a editar en este proyecto. Antiguamente, los permisos debían solicitarse en meta; en la actualidad, puede asignarlos cualquier burócrata. Para anunciar la postulación, una vez realizadas las suficientes ediciones de prueba, el controlador debe incrementar en uno el contador de solicitudes en curso, e insertar y rellenar la siguiente plantilla al comienzo de la sección de Solicitudes actuales: {{sust:Postulación bot | tipo = estándar / bot con permisos administrativos / nueva tarea / reactivación | bot = <nombre del bot> | tarea = <tarea común> | idioma = <idioma nativo del controlador> | comentario = <posibles comentarios (para el caso de bots con permisos administrativos, mencionar si necesita algún permiso no incluido en el grupo de usuarios botadmin)> }} Las votaciones durarán 14 días y en ellas puede votar cualquier usuario con al menos 500 ediciones y 180 días de antigüedad al comienzo de la votación. Las postulaciones referidas a los bots estándar necesitarán que al menos 5 votos y un 75 % del total sean favorables para ser aprobadas; en caso de tener al menos un voto a favor y ninguno en contra, el bot quedará autorizado por silencio administrativo. Las postulaciones que afecten a bots con permisos administrativos deben ser anunciadas en el Café de Noticias y necesitarán que al menos 10 votos y un 75 % del total sean favorables, sin que sea posible la autorización por silencio administrativo. Una vez obtenida la autorización y asignado por un burócrata el flag de bot —en caso de que se requiera—, el controlador deberá añadir y rellenar en la página de usuario del bot la plantilla Gracias por el interés en colaborar en este proyecto mediante un bot. |
This is the page and archive of the required votes for authorizations for bot users that are going to run on this project. In the past, those requests got handled in meta; however, nowadays bot flags can be given by any bureaucrat. In order to nominate a bot, after enough test edits are done, its operator must add one to the current requests counter, and insert and fill the following template at the top of the "Solicitudes actuales" (current requests) section: {{subst:Bot postulation | type = standard / botadmin / new task / reactivation | bot = <bot's name> | scope = <general purpose> | language = <operator's native language> | comments = <possible comments (for botadmin authorizations mention if the bot needs any permissions not included in the botadmin user group)> }} The poll will last 14 days and any user with at least 500 edits and at least 180 days of age since registry prior to the poll can vote in it. To achieve the authorization, it is required to receive at least 5 support votes and a 75% support ratio of the valid votes for standard bots. In the case there are no oppose votes, the bot will be approved by "administrative silence" but must have at least 1 vote. Postulations of adminbots must be announced in the Village pump and will need at least 10 votes and 75% of the total to be favorable, without authorization by administrative silence being possible. Once the authorization is obtained and the bureaucrat has given the bot flag (if needed), the operator must add and fill in the bot's userpage the Thanks for your interest in helping this project by running a bot. |
- NOTA: si apruebas una solicitud no te olvides de actualizar
{{Bots autorizados}}
- Las votaciones se encuentran archivadas por años en las siguientes páginas
- Votaciones del año 2006
- Votaciones del año 2007
- Votaciones del año 2008
- Votaciones del año 2009
- Votaciones del año 2010
- Votaciones del año 2011
- Votaciones del año 2012
- Votaciones del año 2013
- Votaciones del año 2014
- Votaciones del año 2015
- Votaciones del año 2016
- Votaciones del año 2017
- Votaciones del año 2018
- Votaciones del año 2019
- Votaciones del año 2020
- Votaciones del año 2021
- Votaciones del año 2022
- Votaciones del año 2023
Las votaciones finalizadas de este año están almacenadas en el archivo de 2024.
Solicitudes actuales[editar]
- Resultado
- La postulación es autorizada con un 100 % de los votos a favor.
Postulación de una o varias nuevas tareas para ser realizadas por el bot estándar PeriodiBOT, ya autorizado y controlado por MarioFinale.
- Usuario controlador: MarioFinale (disc. · 13 781 contr. · reg. · global · SUL)
- Bot: PeriodiBOT (disc. · 244 212 contr. · reg. · global · SUL)
- Plazo de votación (7 días): 18 de abril de 2024 — 25 de abril de 2024 a las 04:17 (UTC) —plazo expirado—
- Idiomas del usuario controlador: español
- Tarea: Ajuste de referencias
- Comentarios: Durante un tiempo he estado desarrollando una función para resolver ciertos problemas comunes con las referencias en los artículos de Wikipedia.
Como funciona:
- Cada cierta cantidad de tiempo (5 minutos, para luego ir reduciéndolo en medida de su comportamiento) el bot cargará una página aleatoria.
- Verificará si la función no ha sido deshabilitada por algún bibliotecario en esta página, si ha sido desactivada se detendrá acá.
- Verificará si hay referencias vacías en la página cargada, si hay las simplificará por etiquetas ref autocerradas.
- Verificará si hay referencias duplicadas en la página cargada, si las hay las condensará utilizando "ref name".
- Por cada referencia Web que haya detectado en la página, revisará en el historial cuando fue añadida, para luego re-crear la referencia utilizando la plantilla
{{Cita web}}
añadiendo la fecha de acceso y el nombre del sitio web y cargará el sitio web de la referencia.- Si el sitio web está caído o redirecciona a una página genérica (un 404 personalizado, por ejemplo):
- Intentará rescatar el snapshot en Internet Archive más cercano a la fecha en la que fue añadida la referencia.
- Si no hay snapshots en Internet Archive del sitio original, marcará la referencia como rota e irrecuperable.
- Si el sitio web no está caído:
- Enviará la página a Internet Archive para que haga un snapshot de esta.
- Si la referencia no tenía un texto al interior intentará obtener el nombre del sitio desde la página web en la referencia.
- Intentará obtener el idioma original del sitio web, si logra detectarlo lo colocara en el parámetro "idioma" de la plantilla
{{Cita web}}
.
- Si el sitio web está caído o redirecciona a una página genérica (un 404 personalizado, por ejemplo):
- Para algunas páginas especiales realizará cambios especiales en las referencias:
- Para aob.oxfordjournals.org: Regenerará la referencia con el sitio web nuevo para "Annals of Botany".
- Para www.tropicos.org: Los sinónimos y nombres de tropico redireccionan a la página "legacy", por lo que regenerará la referencia con el enlace en el sitio actualizado.
- Para theplantlist.org: El sitio web es obsoleto y puede ser dado de baja en algún momento, en su lugar el bot utilizará "World Flora Online" un sitio web actualizado con la misma información.
- Para web.archive.org: El bot corregirá estas referencias y las regenerará utilizando la plantilla
{{Cita web}}
y completando las fechas de archivo y la url del archivo. - Para apps.kew.org: El bot reemplazará los enlaces de KEW que sean a sinónimos ya que la función en el sitio web fue descontinuada y redirecciona a la página principal. En su lugar intentará obtener el enlace al taxon desde WikiData para en "World Flora Online" y regenerará la referencia.
La idea es, con el tiempo, ir añadiendo más casos para páginas especiales, ya que problema del "Link rot" en las referencias se está extendiendo bastante.
Algunos ejemplos de su funcionamiento: 1 2 3 4 5 6 7 8 9
Como siempre, el código del bot y la libería son libres:
- Comentarios
Hola, MarioFinale, suena bien. Me preguntaba quizás si no sería mejor guardar la información de esta página en una página json. Estas solo pueden ser editadas, por defecto, por el usuario que las crea, bibliotecarios o administradores de interfaz. Así no tendrías que hacer una petición específica en el tablón de solicitudes de protección. Un saludo y muchas gracias por la aportación. Nacaru (discusión) 09:17 18 abr 2024 (UTC)
- Si, es simple; Para el bot todas las páginas son iguales. Solo tendría que crearla manualmente utilizando la interfaz web, ya que por API no se pueden crear ni editar páginas JSON. ~ℳɑrio - (¿Un té?) 06:24 19 abr 2024 (UTC)
- @MarioFinale, de todas formas, independientemente de si se pueden crear o no, en este caso, entiendo que lo único que tiene que hacer el BOT es leer su contenido periódicamente, para lo cual la API no debería dar problemas. La página la puedes crear manualmente. Nacaru (discusión) 12:25 20 abr 2024 (UTC)
- @MarioFinale, con la API sí se puede crear un JSON como subpágina de usuario usando el parámetro contentmodel
json
y un título con extensión.json
, pero ten en cuenta que no se puede usar para cambiar el modelo de contenido en páginas ya existentes (es decir, que una vez creada una página con un modelo no se puede cambiar con una edición de la API, pues es necesario el permisoeditcontentmodel
, solo disponible por bibliotecarios y editores de plantillas). -- Leoncastro (discusión) 14:21 19 abr 2024 (UTC)
Por cierto, la llamada a la API en el enlace de ejemplo constaba de los parámetros:
{
action: 'edit',
format: 'json',
formatversion: 2,
title: 'Usuario:Semibot/Ejemplo.json',
text: '{"activo":true}',
contentmodel: 'json',
token: ...
}
Y la respuesta:
{
"edit": {
"new": true,
"result": "Success",
"pageid": 10860788,
"title": "Usuario:Semibot/Ejemplo.json",
"contentmodel": "json",
"oldrevid": 0,
"newrevid": 159541466,
"newtimestamp": "2024-04-19T14:19:53Z"
}
}
- Comentario: sobre las ediciones del bot:
- el parámetro
|sitioweb=
debería ser el título del sitio; según la documentación: «Es preferible evitar poner la url con el nombre del dominio (por ejemplo, allmusic.com o abc.es; mejor Allmusic y ABC [se puede wikienlazar])». Por tanto en este ejemplo debe evitarse|sitioweb=www.easycredit-bbl.de
y|sitioweb=www.sportando.com
. Por favor, MarioFinale, corrije el procedimiento del bot con este parámetro. - la anotación
<small>enlace irrecuperable</small>
que va al final de la referencia, se presenta después del punto final de esta, por lo que sería conveniente que dicha frase llevase un espacio de separación, mayúscula inicial y punto final. Véase la cuarta referencia corregida en este ejemplo. - cuando se marca como enlace roto «irrecuperable (Sitio caído y no hay snapshots en Internet Archive)», ¿el formato es compatible con InternetArchiveBot, que usa otras copias además de Internet Archive? (me consta que en ocasiones enlaza a webcitation.org). -- Leoncastro (discusión) 14:48 19 abr 2024 (UTC)
- el parámetro
┌─────────────────────────────┘
Hola, gracias por los avisos.
- Sobre el título del sitio, como la plantilla no lo comenta como algo absoluto me había limitado a utilizar la autoridad de la URL. Pero estoy de acuerdo que sería mejor que utilice el nombre del sitio para casos simples. En algunos otros casos más complejos (ej: subdomain.domain.tld1.tld2) tendría que seguir utilizando la autoridad de la url porque distintos subdominios podrían ser páginas web completamente diferentes, y se complica aún más la cosa con algunos subdominios efectivos como .gob.uk o com.ar.
- Anotación corregida, gracias por el aviso, no lo había notado.
- No tenía idea sobre la existencia de webcite. Vi la documentación y es bastante fácil de implementar así que lo estaría añadiendo como fuente alternativa a Web Archive. Igualmente siempre se podrían ir añadiendo más fuentes con el tiempo (siempre y cuando sean abiertas).
Sobre utilizar una página JSON, lo he estado revisando y honestamente veo más complicaciones que beneficios. Estoy contemplando crear una subpágina de usuario única que contenga los distintos parámetros para las otras funciones (así también podrían configurar otras cosas gente que no esté en IRC) y que el parámetro de referencias sea simplemente uno más en esta página. Para eso, una semiprotección debería ser suficiente. Saludos.~ℳɑrio - (¿Un té?) 03:28 20 abr 2024 (UTC)
- En tal caso recomiendo no usar en lo absoluto el parámetro
|sitioweb=
. Es mejor que falte algún caso bueno que agregar algunos casos malos. La alternativa para hacerlo bien no sería viable en todos los casos, pero se podría intentar extraer de los metadatos de la cabecera del código HTML si existe la propiedadog:site_name
(y del mismo modo se podrían extraer, también opcionalmente, otros datos como el autor). -- Leoncastro (discusión) 12:00 20 abr 2024 (UTC)
- Otro comentario: tal como aclara la plantilla de Cita web, en el caso de |idioma=, si la fuente está en español, no es necesario incluir ese parámetro. Lo digo por el ejemplo número 2 que enlazó Mario y para evitar futuros inconvenientes con el bot. Saludos cordiales, MadonnaFan 15:01 24 abr 2024 (UTC)
- Otro comentario: Ante todo, MarioFinale, me alegra que tengas la posibilidad de dedicarte a programar nuevas funciones que, como estas en particular, abordan tareas interesantes y a las que estábamos prestando poca o ninguna atención en nuestro proyecto. Te pregunto/comento también sobre algunos detalles:
- En tu diff de ejemplo 9 (el último), el bot marca este enlace como roto e irrecuperable, cuando parece funcionar correctamente...
- Lo de trabajar en páginas aleatorias cada 5 minutos me parece que es poco práctico a largo plazo, porque además habría que llevar algún tipo de control para no repetir páginas, etc. ¿No sería más eficaz hacer barridos sistemáticos de toda Wikipedia de forma periódica, siguiendo el orden que se decida? Más la posibilidad de habilitar algún interfaz para procesar artículos específicos bajo demanda...
- Para los sitios que usen en sus URL algún tipo de patrón junto con identificadores y a los que tengamos muchos enlaces, sugiero usar una plantilla que nos facilite el mantenimiento y en especial actualizar de una sola vez todos los enlaces si algún día deciden cambiar de patrón (cosa que pasa con cierta frecuencia, lamentablemente). En realidad tendríamos que hacer una revisión sistemática de todos los sitios muy enlazados para ir creando plantillas, pero eso lo dejo para otro momento y lugar.
- Dado que entiendo que compruebas y «capturas» todos los enlaces externos de las referencias para ver si están caídos, ¿sería viable ampliar esa comprobación y captura a los enlaces externos de la sección homónima, y marcarlos también como rotos cuando proceda? Sería útil y complementaría/respaldaría la labor de InternetArchiveBot. - José Emilio –jem– Tú dirás... 20:14 24 abr 2024 (UTC)
- Comentario: MarioFinale, me he fijado en que haces una llamada a la API que devuelve un resultado único cada vez que quieres obtener un artículo aleatorio. Si haces uso del parámetro
rncontinue
cuando hagas las llamadas a través del módulorandom
podrás evitar repetir artículos por los que ya ha pasado, y el artículo elegido seguirá siendo (pseudo)aleatorio (dentro de una lista fija). Tendrás que implementar un sistema para recuperar elrncontinue
de la respuesta de la API para poder pasárselo como parámetro después en la siguiente llamada. En mi bot, yo lo hago asignándole el valor a una variable global, por si te sirve como idea. Hacerlo así es más eficiente que de forma absolutamente aleatoria, sobre todo si solo toma un artículo cada cinco minutos. Nacaru (discusión) 21:55 24 abr 2024 (UTC)- Aunque es más eficiente hacer búsquedas concretas que no aleatorias... Véase aquí. -- Leoncastro (discusión) 22:13 24 abr 2024 (UTC)
- Leoncastro, habría que analizar el caso. A mí, desde luego, ese enfoque no me funcionó. Nacaru (discusión) 22:27 24 abr 2024 (UTC)
- Aunque es más eficiente hacer búsquedas concretas que no aleatorias... Véase aquí. -- Leoncastro (discusión) 22:13 24 abr 2024 (UTC)
Solicitudes resueltas[editar]
Bot | A favor | En contra | Resolución | Tarea | Enlace permanente |
---|---|---|---|---|---|
Strakbot | 12 | 0 | Autorizado | date-link-remover.js | Votación |
NacaruBot | 12 | 0 | Autorizado | retirar rápidamente enlaces internos a fechas de forma semiautomática a través de script mediante date-link-remover-control-panel.js | Votación |
Paquibot | 14 | 5 | Rechazado | Actualización del estatus en la Lista Roja de la IUCN en la {{Ficha de taxón}}
|
Votación |