Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

We should remove alerts like "references needed" and such #169

Closed
facundobatista opened this issue Nov 29, 2015 · 4 comments · Fixed by #226
Closed

We should remove alerts like "references needed" and such #169

facundobatista opened this issue Nov 29, 2015 · 4 comments · Fixed by #226
Assignees
Labels
bug critical newcomers Issues that are good fit for new people in the project

Comments

@facundobatista
Copy link
Member

See http://127.0.0.1:8000/wiki/Transporte_p%C3%BAblico

It has an alert that says: "Este artículo o sección necesita referencias ..."

@fzuccolo
Copy link
Member

No ví este problema en los artículos que revisé. Todos los avisos tipo banner
se incluyen en <table class="ambox"> y son removidos por HTMLCleaner acá.

Artículos que revisé:

Los avisos que sí se mantienen en CDPedia son los del tipo [cita requerida]
que están en línea con el texto (por ej. El_Universal_(México) [cdpedia/wikipedia]).
Yo creo que habría que removerlos ya que no agregan información.
Este aviso particular tiene la forma
<sup>[<i><a href="/wiki/Wikipedia:Verificabilidad">cita requerida</a></i>]</sup>
pero hay muchos otros, como [enlace roto], [fuente cuestionable], [quién],
[cuándo], etc. No sé cómo podríamos hacer para decidir cuáles sacamos, parece que
todos apuntan a un namespace (Wikipedia, Ayuda, etc.). Voy a ver si puedo compilar
una lista de plantillas de este tipo para tener más info.

@fzuccolo fzuccolo self-assigned this Apr 19, 2020
@facundobatista
Copy link
Member Author

Me parece bien! Gracias!

@fzuccolo
Copy link
Member

En la wiki en español hay 12 plantillas (con varios alias) que generan estos aviso en línea:

[actualizar]
[cita requerida]
[cuál]
[cuándo]
[cuántos]
[desde cuándo]
[dónde]
[en dónde]
[fuente independiente requerida]
[por qué]
[pronunciación requerida]
[quién]

Todos estos avisos tienen un HTML de la forma: <sup>[<i>...{texto}...</i>]</sup>.
Hay otros elementos muy parecidos, como las referencias, que no se deberían tocar.

El código que hice para encontrar estos avisos es algo así:

sup_tag = lambda tag: tag.name == 'sup' and not tag.attrs
for tag in soup.find_all(sup_tag):
    children = tag.children
    try:
        if next(children) == '[' and next(children).name == 'i':
            print(tag.text)
    except StopIteration:
        continue

Debería testearse para que sólo saque lo que queremos. Hice una prueba con los
1000 artículos más populares y las coincidencias únicas fueron:

[cita requerida]
[¿cuándo?]
[¿según quién?]
[actualizar]
[¿por quién?]
[¿quién?]
[¿cuál?]   

No sé si el código es óptimo, pero sirve para lo que queremos hacer.

@facundobatista
Copy link
Member Author

Me parece bien, saquémoslas.

Con respecto al código, me parece que ejecutar una función en cada tag que encuentre va a tardar millón de años, yo pediría todos los tags y los iría revisando afuera...

@fzuccolo fzuccolo linked a pull request May 5, 2020 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug critical newcomers Issues that are good fit for new people in the project
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants