Tema de Viquipèdia:La taverna/Tecnicismes

Yuanga (discussiócontribucions)

Hola,

Intento fer anar el bot i em surt el següent error:

WARNING: API warning (login): Fetching a token via action=login is deprecated. Use action=query&meta=tokens&type=login instead.

A algú més li passa i/o sap com solucionar-ho?

Yuanga (discussiócontribucions)

He actualitzat tots els paquets i he tornat a crear les credencials, i sembla que ja funciona, tot i que encara mostra algun warning.

Yuanga (discussiócontribucions)

M'havia fet il·lusions... algú té instal·lat l'script 2to3.py?

Paucabot (discussiócontribucions)

Idò a jo també m'havia passat aquest problema, però a base de reinstal·lar-ho tot, he aconseguit que funcionàs. Ara, no empr aquest script que tu dius ...

Yuanga (discussiócontribucions)

@Paucabot: gràcies... tinc el bot aturat ara mateix, i treient fum pel cap. El problema ara mateix el tinc aquí:

novalinia=unicode(linia,"utf-8")
NameError: name 'unicode' is not defined

No sé com com es fa això en la versió 3.6... he provat a canviar-ho per open() i str(), però el resultat no és el desitjat :(

Townie (discussiócontribucions)

No sé fins a quin punt funcionarà, però hi ha això. En teoria sembla que "produeix un fitxer que ja descodifica les dades a Unicode". Python 3 se suposa que evita tot el sarau de decode i encode de Python 2. A casa, encara anem amb Python 2, però.

Yuanga (discussiócontribucions)

Gràcies, ja ho he provat abans i res!

Paucabot (discussiócontribucions)

Jo ho tenc funcionant amb Python 2.7 i la darrera nightly, però avui de matí hi he perdut una bona estona. Vaja cosa mal parida ...

Yuanga (discussiócontribucions)

He tornat a la 2.7. Ara, el dia que deixi de ser funcional tindrem feina per adaptar els bots a la 3.6.

Mantinc oberta la pregunta: algú amb l'script 2to3.py?

Joutbis (discussiócontribucions)

No m'he plantejat mai migrar a python 3 i no he provat mai l'script aquest. No sé, de moment no em preocupa: pel tipus de feina casolana que fem amb els bots, em va prou bé. És una mica llauna el tractament de l'Unicode, però al final t'hi acostumes. Tenia entès que en python3, tot era directament unicode, i per tant molt més fàcil, però veig que tampoc. Què estàs intentant fer, llegir un fitxer d'entrada línia per línia?

Yuanga (discussiócontribucions)

@Joutbis sí, això: Usuari:MineralBot/codi.

Aquest està en python 2, i al intentar convertir-lo en python 3 deixa de funcionar. Les instruccions print() no són cap problema, però les funcions unicode() crec que són les que fan que peti. De moment tira en el 2, i esperem que per molt de temps.

Joutbis (discussiócontribucions)

Sí això està clar. en python3 no hi ha funció unicode() perquè no fa falta. De totes maneres, continuant en python2, no entenc què fan les funcions unialinia() ni uniaparaula(). La transformació de codificació no cal fer-la línia per línia ni paraula per paraula. A més, ningú no et garanteix que serà utf-8. Fixa't en aquest exemple, et pot servir.

Yuanga (discussiócontribucions)

Està basat en un dels scripts d'en PereBot, que va ser qui em va engrescar i ajudar a crear-ne un. Puc mirar de suprimir les funcions a veure que passa.

Joutbis (discussiócontribucions)

L'únic motiu que li veig és detectar quines paraules donen error i quines no. Però en principi hauria de ser una cosa homogènia.

Yuanga (discussiócontribucions)

Per cert, heu pensat mai en crear una comunitat botaire on poderajudar-nos/compartir/plorar junts?

Paucabot (discussiócontribucions)
Yuanga (discussiócontribucions)

Llàstima... em guardo l'adreça, potser intento reflotar-ho més endavant!

Joutbis (discussiócontribucions)

Si em fas ping, miro d'ajudar-te, cap problema.

Resposta a «Error amb el bot»