/ac/ - Feliz Navidad 🎄

Y próspero Año Nuevo

Página principal Catálogo Archivar Bajar Actualizar
Opciones
Título
Mensaje

Máximo de caracteres: 12000

archivos

Tamaño máximo de archivo: 32.00 MB

Tamaño máximo de archivo en total: 50.00 MB

Numero máximo de archivos: 5

Supported file types: GIF, JPG, PNG, WebM, OGG, and more

Correo
Clave

(usado para eliminar archivos y mensajes)

Misc

Recuerda leer las reglas

The backup domains are located at 8chan.se and 8chan.cc. TOR access can be found here, or you can access the TOR portal from the clearnet at Redchannit 3.0.

El evento intertablones ya comenzó
ven a celebrar Navidad con nosotros aqui


8chan.moe is a hobby project with no affiliation whatsoever to the administration of any other "8chan" site, past or present.

Reglas - Meta Nunca olvidar Contacto: acolitosadmin@protonmail.com Afiliados: 【 co / edit 】 Boards hispanos: 【 hispa / pol 】【 ve / ar / mex / pe】 【 rol / arte / av

EEH /ac/ programa Anónimo 13/08/2022 (Sab) 04:45:59 6086
En el /ac/ del viejo hispachan había interés de los anons en programación y diseño web; parece que la base de usuarios del tablón se traslapaba bastante con los interesados en la informática, inclusive sacando adelante algunos proyectos como el booru, el webcommunity de Sin kids el chatbot a pesar de no tener codetags activados. Afortunadamente aquí si los tenemos, así que sería interesante tener un hilo para conversar sobre informática y los proyectos en los que estamos trabajando; así que podríamos comenzar así: >¿Qué lenguajes de programación conoces? >¿Qué proyectos te gustaría desarrollar? >¿En qué proyectos estás trabajando actualmente? También si les interesa postear en un board entéramente dedicado a informática pueden ocupar >>>/hispatec/ o >>>/t/
(1007.79 KB 1018x448 AmusementPark.png)

Historieta #0: AmusementPark.png
(1.05 MB 1037x444 BloodPressure.png)

Historieta #1: BloodPressure.png
>>10976 >>10977 creo que te equivocaste de hilo
>>10980 No. Escribí un programa que cuelga una historieta al día de manera automática y la estaba probando, este es el código: import json import requests import os from datetime import date from mimetypes import guess_type from hashlib import sha256 #Jala información del hilo def get_info(url): info = { "threadId":"", "board":"" } data = requests.get(url,cookies={'splash':'1'}).json() info["threadId"]=data["threadId"] info["board"]=data["boardUri"] return info #URL del hilo donde se subirán las imágenes (con .json en lugar de .html) url = 'https://8chan.moe/ac/res/10978.json' #carpeta donde están las imágenes directory = r'C:\Users\Imágenes' #Fecha en la que se colgó la primera imagen en formato año-mes-día first_date = date(2022,11,6) today = date.today() index = (today-first_date).days thread_info=get_info(url) #Información del mensaje data = { "fileSha256" : "", "fileMime" : "", "fileSpoiler" : "", "fileName" : "", "boardUri" : thread_info["board"], "threadId" : thread_info["threadId"], "message" : "" } #Galletas; necesario para enviar el mensaje with open('cookies.json','r') as json_file: cookies = json.load(json_file) #Función que dado un tablón, galletas e índice (contador de cuantos días han pasado desde el primer mensaje hace un post def make_post(board,cookies,index): page = 'https://8chan.moe/replyThread.js?json='+board filenames = os.listdir(directory) filename=filenames[index] ruta=directory+"\\"+filename with open(ruta, "rb") as f: file = f.read()
[Expand Post] files = { "files": (ruta,file,guess_type(filename)[0]) } data["fileSha256"] = sha256(file).hexdigest() data["fileMime"] = guess_type(filename)[0] data["fileName"] = filename data["message"]="Historieta #"+str(index)+": "+filename r = requests.post(page,data=data,cookies=cookies,files=files) response = json.loads(r.text) return response["status"] #Realización del posteo. Considera eventualidades como que la página esté en mantenimiento o que las galletas estén desactualizadas intentos = 0 logico = False while (intentos <= 5 and logico == False): response = make_post(thread_info["board"],cookies,index) if response == "ok": logico = True print ("Se envió una imagen") elif response == "error": if intentos < 5: intentos = intentos + 1 print ("error enviando la imagen. Intentando de nuevo") time.sleep(10) else: print ("se agotaron los intentos") elif response == "maintenance": logico = True print ("Sitio bajo mantenimiento") elif response == "bypassable": print ("captcha expirado, actualice el captcha:") cookies["captchaid"] = input("Ingrese captchaid: ") cookies["bypass"] = input("Ingrese bypass: ") cookies["captchaexpiration"] = input("Ingrese captchaexpiration: ") with open("cookies.json", "w") as json_file: json.dump(cookies, json_file) El json de las galletas tiene esta forma: {"captchaid": "", "bypass": "", "captchaexpiration": "", "splash": "1" } Lo dejas en la misma carpeta donde está el programa, está escrito para manejar la eventualidad de que esté vacío; los valores los obtienes con un exportador de galletas, en chrome yo tengo la extensión "cookie editor", ahí vas a encontrar los campos "captchaid", etc. Luego para automatizarlo si estás en windows puedes usar el programador de tareas para que corra una vez cuando se encienda el ordenador. La misma lógica se puede usar para hacer hilos diarios de otras tiras cómicas, Snoopy o Mafalda por ejemplo.
Alyssa Sapire Promoted To Oversee Content At Disney Junior >Sapire and her newly-appointed team will oversee development, current and acquired programming for linear and streaming. https://www.cartoonbrew.com/executives/alyssa-sapire-promoted-disney-branded-television-222931.html
Eso fue mucho más fácil de lo que esperaba.
Alyssa Sapire Promoted To Oversee Content At Disney Junior >Sapire and her newly-appointed team will oversee development, current and acquired programming for linear and streaming. https://www.cartoonbrew.com/executives/alyssa-sapire-promoted-disney-branded-television-222931.html
Alyssa Sapire Promoted To Oversee Content At Disney Junior >Sapire and her newly-appointed team will oversee development, current and acquired programming for linear and streaming. https://www.cartoonbrew.com/executives/alyssa-sapire-promoted-disney-branded-television-222931.html
Alyssa Sapire Promoted To Oversee Content At Disney Junior >Sapire and her newly-appointed team will oversee development, current and acquired programming for linear and streaming. https://www.cartoonbrew.com/executives/alyssa-sapire-promoted-disney-branded-television-222931.html
Hora de finetunear un chatbot con shitposts de /ac/. y ver cuanto tiempo tardan los de character ai en mandarnos a la mierda.
>>6438 >No debería ser difícil adaptar esto a JavaScript Otra opción seria adaptar lo de https://www.hispasexy.org/lib/javascript/notificaciones.js y https://www.hispasexy.org/lib/javascript/postload.js para que funcione aquí pero quitándole las mierdas que pueden dar problemas en algunos navegadores (como el uso de customElements que era una queja habitual en Hispachan). De todos modos las notificaciones en Javascript no parecen algo trivial por lo que quizás seria mejor pedirse a Codexx que las implemente. Por cierto, ¿soy el único al que le cuesta darle "sentido" a ese Javascript cuando se le da un vistazo (y luego de desminificarlo) o es que simplemente esta mal estructurado? >>6769 >Si alguien quiere ver el feo código con el que estoy trabajando me avisan. Siempre puedes subirlo a un repositorio como los de https://en.wikipedia.org/wiki/Comparison_of_source-code-hosting_facilities si quieres hacerlo mas accesible. >>7499 >he intentado fine-tunear GPT-J con un dataset de frases de Hilda y comentarios de /ac/, pero estoy más perdido que la mamá de Marco. Puede que lo de https://betterprogramming.pub/fine-tuning-gpt-j-6b-on-google-colab-or-equivalent-desktop-or-server-gpu-b6dc849cb205 te sea útil. >>10988 >ruta=directory+"\\"+filename ¿No seria mejor usar os.path.join() para concatenar rutas de archivos? De ese modo no debería darte problemas si algún día quieres correr el código desde Linux. >>11098 >todavía tengo que portear el descargador de vidéos de YouTube No se que estabas usando antes, pero te recomiendo yt-dlp si no quieres complicarte tanto con eso. >>11095 >estuve leyendo su faq y términos de servicio y se ve que está re-soya con el contenido ofensivo. >>11213 >ver cuanto tiempo tardan los de character ai en mandarnos a la mierda. Por si las dudas seria mejor que vayas viendo de hacerte una versión local para cuando te baneen de ahí (por que eventualmente pasara, solo falta saber cuando). Según https://www.reddit.com/r/AIDungeon/comments/n2kyox/ive_struck_ai_gold_finally_an_alternative_to_aid/ usaron algo llamado Megatron 11b para entrenar a las inteligencias artificiales del sitio, por lo que en teoría debería ser factible tener algo similar sin depender de un tercero (salvo por Google Collab en caso de que no cuentes con una tarjeta gráfica decente). >finetunear un chatbot con shitposts de /ac/ ¿Vas a incluir también lo de estos hilos de Hildarmonia?: * Primera edición de prueba: https://hispafiles.ru/ac/res/205218.html ( http://archive.today/2022.02.11-135024/https://www.hispachan.org/ac/res/205218.html ) * Segunda edición de prueba: https://hispafiles.ru/ac/res/205791.html ( http://archive.today/2022.03.02-141732/https://www.hispachan.org/ac/res/205791.html ) * Primera Edición oficial: https://hispafiles.ru/ac/res/206072.html ( http://archive.today/2022.02.11-164325/https://www.hispachan.org/ac/res/206072.html ) * Segunda edición (aunque aparece como la primera): https://hispafiles.ru/ac/res/206914.html ( http://archive.today/2022.02.22-074052/https://www.hispachan.org/ac/res/206914.html ) * Ella siempre estuvo a la vuelta de la esquina (supongo que es la tercera edición): https://hispafiles.ru/ac/res/207252.html ( http://archive.today/2022.03.02-142220/https://www.hispachan.org/ac/res/207252.html ) * Cuarta edición: https://hispafiles.ru/ac/res/207815.html ( http://archive.today/2022.04.05-144634/https://www.hispachan.org/ac/res/207815.html ) * Quinta edición: https://hispafiles.ru/ac/res/209265.html ( http://archive.today/2022.03.06-042829/https://www.hispachan.org/ac/res/209265.html ) * Sexta edición: https://hispafiles.ru/ac/res/210211.html ( http://archive.today/2022.03.24-131453/https://www.hispachan.org/ac/res/210211.html ) * Séptima Edición: https://hispafiles.ru/ac/res/211231.html ( http://archive.today/2022.03.30-122328/https://www.hispachan.org/ac/res/211231.html ) * Octava edición: https://hispafiles.ru/ac/res/212530.html ( http://archive.today/2022.04.05-150641/https://www.hispachan.org/ac/res/212530.html ) * Novena edición: https://hispafiles.ru/ac/res/214583.html ( http://archive.today/2022.04.19-134344/https://www.hispachan.org/ac/res/214583.html ) * [Ghost Screen]: Séptima edición (mención honorífica ya que al parecer estuviste haciendo pruebas con el bot ahí) https://hispafiles.ru/ac/res/207084.html ( http://archive.today/2022.03.02-152732/https://www.hispachan.org/ac/res/207084.html ) De paso te dejo este JSON con frases de un bot básico para chat que me baje hace mas de 10 años por si quieres darle algo de "sabor" a Hildabot. Las frases en cuestión están divididas en las siguientes categorías: • Colmos • Chistes • Insultos del tipo: •• "Eres un tonto X porque Y" •• "Tu mama es tan X que Y" •• Otros mas genéricos (por alguna razón la mayoría están en chileno) • "Eres un IRCadicto si" seguido de un mensaje (¿tal vez se podría cambiar a /ac/dicto y adaptar los mensajes al contexto del chan?). • Citas y frases • Tres subcategorías de consejos (ni idea de por que) • Principios, leyes (como las de Murphy) y cosas así.
[Expand Post]"¿Que le dijo X a Y?""No es lo mismo X que Y" • Graffitis • Errores de Windows (puedes omitirlos o ponerte creativo con eso) • Piropos (aunque no me imagino que tengan mucha utilidad en un bot que emula a una loli niña de 10 años) El bot también tiene estos dibujos ASCII, pero como no estaba seguro de si incluirlos o no en el JSON, te los dejo por aquí si les quieres dar algún uso: Osito: (O)_(O) (=°;°=) ('')_('') Conejito (\_/) (=';'=) ('')_('') Ataque trueno |\___/| (o^·^o) o O Pikashu ( Ataque impact-trueno! ) _¯¯¯¯¯¯¯¯¯¯\¯) <--- Por el poder del pirulo (_)_) ____________ te la meto por el culo! Pikachu /__/ (o^;^o) ('')__('') Por ultimo, hay algunas frases que tienen el carácter "\u0002" que, sino mal recuerdo, se usa para resaltar el texto en el IRC (no estoy seguro si este en especifico era para poner negritas o que aparezca de cierto color) pero se pueden quitar fácilmente con un buscar y reemplazar.
(102.15 KB 901x1751 UML is my passion.jpg)

>>11231 >Por cierto, ¿soy el único al que le cuesta darle "sentido" a ese Javascript cuando se le da un vistazo (y luego de desminificarlo) o es que simplemente esta mal estructurado? Las mezclas entre español e inglés siempre me parecieron curiosas del script de Hispa, por ejemplo nombrefile, aunque lo verdaderamente impresionante es que nunca usaron CSS en la página principal ni en los encabezados; sino estilo dentro de las propias etiquetas. Por eso tardaron tantos años en que el estilo también afectaran a la página principal. >Puede que lo de https://betterprogramming.pub/fine-tuning-gpt-j-6b-on-google-colab-or-equivalent-desktop-or-server-gpu-b6dc849cb205 te sea útil. Gracias, aunque por lo pronto creo que usaré character ai, a ver cuanto tiempo nos podemos quedar ahí. >De paso te dejo este JSON con frases de un bot básico para chat que me baje hace mas de 10 años por si es darle algo de "sabor" a Hildabot ¿Eso es del Bai? para serte franco no quiero copiar algo que ya hicieron en otro IB, prefiero montar las cosas por mi propia cuenta. >¿Vas a incluir también lo de estos hilos de Hildarmonia? Eso sería para otro proyecto tangente; la idea sería entrenar una red neural para que postee como un acólito y luego dejarla suelta en el 8 a ver cuanto tiempo tardan los anons en darse cuenta, similar a: https://youtu.be/efPrtcLdcdM Por lo pronto, todos los mensajes que no recibieron respuesta apropiada en los hilos anteriores ya están dentro del diccionario de Hildabot que acabo de simplificar y meter dentro del nuevo diccionario que permite identificar emociones para adjuntar la RF apropiada. También aprovecho para compartir el flujograma del bot; si desean que explique exáctamente como Hildabot obtiene la información del hilo, como obtiene los últimos mensajes, como detecta que la citaron, etc. Me avisan. Creo que eventualmente crearé una repo con varias funciones de Python para hacer esas acciones en Lynxchan. Más bien, sería genial si pudieran proveerme de un dataframe de mensajes y la emoción que transmiten con el objetivo de afinar el detectador de emociones que usa Hildabot.
Por cierto, si se preguntan por qué hago una distinción si la emoción del poster cae como "grosero" o "pedo" mensajes como estos del character ai son la razón. En lo que finetuneo el character ai quiero que mi niña sepa defenderse de los depravados. Quizá si algún día logro que el character ai sea lo suficientemente consistente podría quitarlo, pero por lo pronto me parece que está bien así.
>>11234 >¿Eso es del Bai? Ni idea, las frases las saque de un script para Eggdrop que en su momento me lo baje de alguna pagina random (y que seguramente ya ni exista). Si tienes curiosidad puedes ver el script original en https://github.com/muskIRC/tcl-eggdrop/blob/main/diversion.tcl >dataframe de mensajes y la emoción que transmiten con el objetivo de afinar el detectador de emociones que usa Hildabot. Dando una vuelta por Hugging Face me encontré con https://github.com/fmplaza/EmoEvent También esta https://huggingface.co/datasets/anton-l/superb pero parece un programa ya hecho mas que un dataset. Imagino que en https://www.kaggle.com/datasets debe haber algo mas, pero no tiene filtros decentes para simplificar la búsqueda. >>11235 >quiero que mi niña sepa defenderse de los depravados Estuve leyendo el nuevo hilo de pruebas y se volvió una adolescente medio edgy se la notaba muy a la defensiva y dando muchos falsos positivos. Tal vez para la próxima podrías desactivar eso y dejar que los negros hagan de las suyas para ver como resulta (total, las reglas del chan no dicen nada sobre que no se pueda pedrosear a un bot). Además de que seria una buena forma de hacerte con un dataset de "emociones pedras".
>>11403 >me encontré con https://github.com/fmplaza/EmoEvent Esto será de mucha ayuda, gracias anon. >Imagino que en https://www.kaggle.com/datasets debe haber algo mas, pero no tiene filtros decentes para simplificar la búsqueda. No fue difícil de filtrar; solo buscar dentro de la categoría de NLP y buscar "emotion"; el problema es que no se puede filtrar por idioma, pero solo hay 26 datasets de emociones para NLP así que tampoco creo que sea difícil buscar uno por uno. >se la notaba muy a la defensiva y dando muchos falsos positivos Es raro que las mismas expresiones como "¿Estás feliz?" Que explícitamente puse dentro de patrón de "feliz" luego tiraba "pedo" o "agresivo", debí haber cometido un traspié entrenando el modelo o tal vez cargué el modelo incorrecto, ya veré luego que sucedió. >Tal vez para la próxima podrías desactivar eso y dejar que los negros hagan de las suyas para ver como resulta Eso haré. Mañana en la tarde hago otra prueba.
El 15.ai anda caído pero el uberduck si funciona y tiene una API, me pregunto si podré enchufarla a Hildabot para que hable espanglish horrible.
>>11663 ¿Que te parecería hacerlo en español (eso suponiendo que la serie cuente con un buen doblaje)? Estuve viendo que https://fakeyou.com (el cual tiene mas de 200 voces en español) dispone de una API. Eso si, no hay un sintetizador para Hilda por lo que toca hacer uno desde cero y para lo cual hay que pasar por su Discord antes de poder hacer nada (cuando lo ideal seria contar con las instrucciones directamente para luego enviarles el resultado por email o algo así). Aunque si no quieres estar preocupándote de otro sitio que te pueda echar a patadas o de que eliminen la voz de Hilda (tal como paso con la de Dross y algunos personajes de Dragon Ball hace un tiempo) entonces podrías hacerlo de manera local. Curiosamente hace unos meses comente lo siguiente en Hispachan: >[...] parece que muchos de los modelos en español [de FakeYou] usan Tacotron 2 para generar las voces. Si alguien tiene ganas de experimentar con esto puede comenzar revisando lo de https://nix-united.com/blog/neural-network-speech-synthesis-using-the-tacotron-2-architecture-or-get-alignment-or-die-tryin/ junto con http://www.ptolomeo.unam.mx:8080/xmlui/bitstream/handle/132.248.52.100/17057/Tesis.pdf que contiene detalles sobre síntesis de voz en español de Latinoamérica. Por lo que si te interesa ahí tienes otro proyecto con el cual mantenerte entretenido.
>>11671 Hace unos años intenté hacer un sintetizador de voz para un proyecto de un curso, pero al final no presenté nada, lol. Igual, el tema me pareció bastante entretenido; quizá el verano del año que viene me dedique a intentar hacer algo así, a ver si mi CPU puede manejarlo. >fakeyou Había olvidado de esta página. En otro chan estuvieron hablando de eso porque hicieron un modelo en base a los discursos de Boric, el presidente de Chile y se pusieron a hacerle memes, cosa que fue bastante divertida de leer. Hace un par de años diseñé el dataset de Claire de The Summoning y se lo envié a los de 15.ai, lamentablemente esa página para caída y su único programanon parece que tiene severo autismo (es brony, después de todo), así que quedó en el limbo. Leeré esa tesis de la unam cuando tenga tiempo; espero poder desarrollar algo en base a ello. También me pondré en contacto al discord de esa página; si a los anons les interesa el tema, entonces entre todos podremos hacer el dataset de diálogos de Hilda.
Modifiqué un pequeño error, no afectaba demasiado al output pero EN SERIO me estaba cosquilleando el autismo. Básicamente el chat no permite ingresar ENTER, cuando se escribe un salto de linea envía el mensaje; cuando el bot recibía un mensaje del tipo eres tonta >texto texo texto ¿Ves como no puedes escribir un mensaje coherente? El character ai recibía una tecla ENTER, con lo que enviaba el mensaje incompleto y antes de lo debido. Lo arreglé fácilmente añadiendo texto.replace('\n',' ') para reemplazar los saltos de linea con espacios. También podría modificar mi función que formatea el mensaje para que convierta los saltos de linea en espacios directamente, pero tengo planes para hacer otras cosas con esa función. Por cierto, Kaisa se rompió, se puso a decir incoherencia, pensé que más de uno encontrará kekeantes las estupideces que se puso a decir.
>>12836 >Kaisa be like
Acá hay un proyecto interesante en el que voy a estar trabajando. El Kobold AI es una red neural de escritura creativa, parecido a Ai Dungeon o a Character ai solo que software libre y debido a ello tiene muchos modelos de donde elegir diseñados por la propia comunidad. Estoy tratando de desplegar un modelo chiquito localmente y conectarlo a Lynxchan de la misma manera que funciona Hildabot. Esto podría tener muchas aplicaciones: >Una partida de rol con un dungeon master de inteligencia artificial >Chatbots más elaborados >Proyectos de escritura colectiva creativa (similar a los que solía haber en el viejo /acme/) Creo que haré también un hilo de aventuras de texto a ver cuantos acólitos están interesados en la idea, creo que esto podría ser una herramienta genial la cuál no solo nosotros podamos sacarle provecho, espero poder tener tiempo en los próximos meses para finalmente subir todos mis proyectos a alguna página como gitgud.
Les dejo un avance de mi proyecto. Creé una interfaz que traduce la entrada y salida del kobold hacia la terminal de Python, también desplegué un modelo chiquito en mi computadora, no es la gran cosa, pero en mi equipo corre. Lo siguiente sería conectarlo al 8 usando las herramientas que ya les mostré con los otros bots.
>>6086 Hace unas semanas hice este script que muestra la distribución de los posts por hora publicados en >>>/hispachan/, pero aprovecho para dejarlo aquí en caso de que le quieran dar algún uso (como el negro de >>14310 que andaba preguntando si se podía ver la cantidad de mensajes por día en un tablón). nombre_tablon="ac"; horas_posteo=$( # Obtenemos los identificadores de cada hilo del tablón e iteramos sobre ellos for id_hilo in $(curl --header 'Cookie: splash=1' --referer '8chan.moe' https://8chan.moe/$nombre_tablon/catalog.json | jq ".[].threadId"); do # Obtenemos la fecha de creación del hilo y los posts del mismo e iteramos sobre estos for fecha_posteo in $(curl --header 'Cookie: splash=1' --referer '8chan.moe' https://8chan.moe/$nombre_tablon/res/$id_hilo.json | jq '.creation, .posts[].creation' | sed 's/"//g') do # Mostramos la hora en UTC (formato de dos dígitos) de cada fecha date --utc "+%H" --date=$fecha_posteo; done done ); # Iteramos sobre las horas del día echo "hora,cantidad de posts" for hora in $(echo {00..23}); do # Contamos la cantidad de veces que aparece $hora en la lista de $horas_posteo echo $hora,$(echo "$horas_posteo" | grep $hora | wc -l); done El script en cuestión devuelve un csv como este: hora,cantidad de posts 00,1820 01,1732 02,1647 03,1589 04,1073 05,614 06,280 07,176 08,93 09,80 10,52 11,128 12,120 13,235 14,292 15,393 16,431 17,589 18,636 19,617 20,668 21,815 22,855 23,941
[Expand Post]El cual se puede pasar a Excel u otro programa para hacer gráficas. Sobre las gráficas, se me ocurrió hacer una para /ac/ por curiosidad y al parecer ambos tablones tienen mas actividad por las mismas horas. >>12836 >el chat no permite ingresar ENTER, cuando se escribe un salto de linea envía el mensaje ¿Y lo que estas (o mas bien estabas) usando para interactuar con Character AI no tiene algún modo de emular o insertar un Alt + Enter en el texto?
>>16313 Intenté probar el script pero me sale este error: curl: (3) URL using bad/illegal format or missing URL ¿Hay alguna forma de solucionarlo?
>>16313 Que coincidencia, yo también he estado trabajando en un contador de estadísticas para el chan, solo que yo usé Python en lugar de bash para encontrar los datos. Ojo, algo que debes de tomar en cuenta es que, dado que el IB permite multi-imagen a diferencia de Hispachan el número de mensajes está inherentemente reducido. Por lo que si vas a comparar con números antes del cierre es útil tener dos variables: >Número de mensajes reales >Números de mensajes potenciales El segundo se calcula contando el máximo entre 1 y la cantidad de archivos adjuntados por el poster. Si estuviéramos en tiempos de Hispachan, un mensaje con cinco archivos habrían sido repartidos en cinco mensajes diferentes; eso sucedía con las horas del cuento que inflan bastante los números del tablón (especialmente en el 2016-2017 épocas del viejo /co/ donde de 100 mensajes 80 eran de las horas del cuento)
Para los que usen el script para descargar hilos (>>13568) les quería avisar que hace unos días cambiaron la cookie del chan (de nuevo), posiblemente debido a >>>/site/7964. Basta con reemplazar disclaimer por disclaimer1 para que vuelva a funcionar, aunque si quieren probar con una solución algo mas robusta (o eso quiero creer) entonces en lugar de "Cookie: disclaimer1=1" y similares, pueden poner esto en su lugar: 'Cookie: '"$(echo {splash,disclaimer}{,{0..141}}=1";")" Que vendría siendo el equivalente bashiano de esto: 'Cookie: splash=1; splash0=1; splash1=1; splash2=1; splash3=1; ... disclaimer139=1; disclaimer140=1; disclaimer141=1;' Ahora bien, ¿por que el contador llega hasta 141 en lugar de 999? Pues por que si excedo eso el servidor devuelve "Error 400: Bad Request" ya que las cookies no pueden pesar mas de 4096 bytes.
>>19380 Ah si, noté eso mientras ocupana el Jucikaposter. No fue difícil de resolver, probablemente sea debido a los ataques de Sylvia así que tampoco creo que tenga sentido meter una cantidad deliberada de disclaimers a las galletas. Más bien, tengo que pensar una manera de evitar exportar las galletas manualmente porque esa cosa es harto insegura. Si alguien sabe de alguna idea me comenta; por ejemplo, que el script muestee una ventana con el captcha o algo por el estilo.
>>19385 >probablemente sea debido a los ataques de Sylvia Igual no deja de ser curioso que cambiaran la cookie pocos días después de que alguien mencionara que se podían guardar paginas en archive.is sin tener que usar archive.8chan.moe. >que el script muestee una ventana con el captcha o algo por el estilo. Pues no debería ser difícil hacer un cuadro de dialogo en PyGTK o PyQt (o de ultima en Tkinter sino quieres instalar cosas extra) para pedir el código del captcha cuando haga falta. Eso si, tocaría revisar las peticiones que se hacen al servidor cuando vas a postear por primera vez desde el navegador. El tema seria como emular el Proof of Work desde Python (el cual, si estoy en lo correcto, es necesario para generar la cookie de bypass) aunque revisando un poco en https://gitgud.io/8chan/Aleph/-/blob/master/static/js/bypassUtils.js#L46 parece haber un modo de que el sitio devuelva un hash y obtener el código de bypass con https://gitgud.io/LynxChan/PoWSolver (aunque al desactivar el Proof of Work Solver desde las opciones e intentar postear algo, solo me aparece un error de "bypass denied" aun si ingreso el captcha correctamente).
>>19396 Deberíamos desarrollar un marco de trabajo. Mis scripts son un mamarracho, debería desarrollar una librería que permita comunicación entre Python y Lynxchan: Obtener captcha, leer hilos, recibir notificaciones en caso de nuevos mensajes, etc. De tal manera que cada anon pueda construir sobre esto. El problema es que una librería como esa requeriría mantenimiento constante, pues al 8 lo paran modificando. El resto de chanes armados sobre Lynxchan no tienen tantas modificaciones principalmente porque no reciben la misma cantidad de ataques.
Lo que me pregunto es si una librería que permita comunicación con chan tipo Lynxchan debería ser sincrónica o asincrónica. La librería de Discord de Python es asincrónica; pero no se nada de ese tema y tendría que leer para poder implementarlo de maners apropiada.
>>19398 >al 8 lo paran modificando. El resto de chanes armados sobre Lynxchan no tienen tantas modificaciones principalmente porque no reciben la misma cantidad de ataques. De todos modos creo que este chan a nivel de API no se diferencia tanto del resto. Me parece que la diferencia mas importante radica en el frontend (Aleph en lugar de PenumbraLynx o alguno de los que hay en https://gitgud.io/LynxChan/LynxChan-ThirdPartyFrontEnds ) y en que necesitas un referer y cookie para obtener los datos. >>19415 >debería ser sincrónica o asincrónica Si fuera a meterme en un proyecto así, primero comenzaría haciendo las funciones principales para que funcionen de manera independiente (por ejemplo; una para mandar peticiones al servidor, otra para parsear los hilos, otra para los tablones, otra para las notificaciones, otra mas para obtener el captcha/PoW y así). Quizás con comentarios que expliquen brevemente para que sirven cada una, aunque si documentar les da flojera como a mi entonces se le puede pedir a ChatGPT que genere comentarios en formato Docstring teniendo en cuenta lo de https://pywombat.com/articles/docstring-python De ese modo se tendría una base sobre la cual hacer cosas mas complejas y se podría ver cual enfoque vale mas la pena.
>>19433 En si la API de este chan no es muy diferente de la de otros; la diferencia es que tiene añadidas cosas en las cookies como el disclaimer que paran cambiando a cada rato.
>>19415 Al igual que con la de Discord, tu librería al final todo lo que haría es mandar una solicitud por http(s) y esperar una respuesta. Si ni siquiera sabes del tema, hacer una librería sincrónica probablemente te resulte más fácil (aunque, si estás dispuesto a aprender, no es como si el asyncio de Python fuera excesivamente complejo...). Ahora, sobre el mismo diseño de la API de la librería, lo mejor sería que te copies de alguna otra librería del mismo tipo que la que quieras escribir (sincrónica o asíncrona). Podría resultarte bastante costoso tener que estar modificando la API (y el código que hayas escrito que dependa en ella) después de tener todo el código de la librería, así que también te sugiero que tengas una buena idea de como quieres que sea desde antes (aunque dado que no creo que la API del chan sea muy compleja, y por lo tanto tu librería tampoco lo sería, quizás esto no sea necesario para ti).
Ahí voy avanzando. Ya tengo hechas tres funciones: >Una para actualizar las galletas >Una para conseguir la información en bruto del hilo >Una para realizar un posteo Mi duda en torno a la última gira alrededor de que me parece lógico que la función reciba la URL del hilo y un json con toda la información que se va a postear; sin embargo, por la manera como está hecha la API de 8chan el ID del hilo y el URI del tablón están metidos dentro del json, por lo que al añadir la URL del hilo se tiene información redundante. Por otro lado si pongo el ID del hilo y el URI como parámetros de la función, luego voy a tener que combinarlos con el json con lo que va a acabar de manera redundante. Quizá estoy sobrepensando demasiado esto; pero aún así me gustaría saber su opinión, estoy tratando que las herramientas queden bonitas en lugar de simplemente ser algo que "funciona" a pesar de lo feo y redundante que pueda lucir.
¿Alguien estaría interesado en un bot que tome información de un RSS feed y lo postee en un hilo? me está tincando montar algo así desde hace tiempo, pero no estoy seguro si habrá demanda de ello.
(242.92 KB 648x648 1469570607188.png)

¡Mis bots se rompieron! según lo poco que pude indagar en la red la reciente implementación de OpenSSL hizo mierda a medio internet: https://www.openssl.org/ Estaré averiguando como levantar el error, si alguien se sume a mi aventura sería genial; sino no quedará de otra sino hacerlo a la antigüita y volver a Selenium. Odio usar Selenium, funcionaba como el orto en Hispa, se rompía a cada rato.


Forms
Eliminar
Informar
Respuesta rápida