Colorea tu fiesta de elección


[Eric] elabore una secuencia de comandos de Python simple para extraer los resultados de las elecciones de CNN.com. Utiliza urllib2 para devolver los votos populares y electorales de cada partido y arroja una excepción ElectionWon cuando CNN llama a la contienda. Él planea vincular esto a una luz LED RGB controlada por DMX que cambiará a azul o rojo a medida que avanza la noche. Es un excelente punto de partida si desea realizar algo similar.

Puede recordar [Eric] para construir la mesa IKEA MAME y el terminal inalámbrico TRS-80.

[photo: skenmy]

ACTUALIZAR: [Garrett] de macetech está ultimando su versión, que utiliza 32 módulos ShiftBrite y 2 displays de 4 dígitos controlados por CuBLOC.

  • difícil dice:

    Oh, pero ¿cómo construyo esto en menos de 24 horas con Radioshack cerrado?

  • puñal dice:

    @fripona

    Radioshack no te ayudaría demasiado con las luces DMX. Sin embargo, tiene uno que va desde PAR $ 70 a una tira de martin, el protocolo DMX es bastante simple por lo que tengo entendido. Debería ser fácil de falsificar de alguna manera.

  • LMM dice:

    Esto es PERFECTO para cualquier partido electoral. Imagínese ver la selección en la televisión y tener todas las paredes a su alrededor cambiando esos colores mientras sus invitados le gritan que son azules o rojos cuando lo quieren rojo o azul.

  • Antonio dice:

    ¿Se puede arreglar esto con una catapulta automática que arroje huevos a un cartel del candidato perdedor?

  • eric gradman dice:

    Puedes hacerlo mañana si vives cerca de un Guitar Center. Ven a comprar algunas cajas de pares de LED. Coge algunos cables XLR. Compra un controlador DMX. Utilizo ENTTEC DMX USB PRO, que puede no estar disponible en Guitar Center, pero sin duda es una alternativa.

    Aunque el protocolo DMX es bastante simple, tiene algunos tiempos difíciles. Me advertiría a mí mismo que debería intentarlo desde cero debido al hecho de que se puede hacer en una computadora a un precio bastante bajo.

    De hecho, solo he integrado el código que publiqué con el código DMX (de un proyecto anterior), y pronto actualizaré la entrada del blog con el código final.

  • Dios dice:

    Esta es una gran publicación, sin embargo, sería bueno si se publicara hace unos días. Estoy demasiado borracho para hacer algo suave con eso en este momento.

  • macegr dice:

    Estoy construyendo uno de estos ahora. Tengo su código funcionando, con algunas modificaciones para enviar los datos a un módulo Bluetooth / serie a través de rfcomm. Tendrá gráficos de rayas rojas / azules y pantallas de gran número con el recuento en ambos extremos. Se verá como una batalla de cómics de 80 ...

  • macegr dice:

    Estoy analizando los datos ahora, pero lo difícil es que no estoy seguro de cuál será el formato de la variable de votación popular. Tal vez sea un número simple, tal vez esté separado por mil, y así sucesivamente. Supongo que mañana tendré que modificar un poco el código. Pero la construcción física sigue ...

  • werejag dice:

    eric gradman

    ¿Puedes dar más detalles sobre el mod trs80?

  • Darthur dice:

    ¿Alguna idea sobre cómo obtener un estado en términos de porcentajes estatales? Parecen estar enterrados en uno de los otros archivos a los que se vincula el html.

  • macegr dice:

    ¡Si, funciona! De acuerdo: 32 modos RGB ShiftBrite seguidos, que se ejecutan desde Cubloc CB405, reciben datos a través de una conexión Bluetooth desde una caja Linux que se ejecuta en el armario. Esta caja funciona en una versión modificada del raspador de CNN. Utilizo los 32 LED como gráfico de barras y tengo dos pantallas rojas de 2 ″ 4 dígitos y 7 segmentos que muestran el conteo real de las papeletas. Solo mañana tocará esto en un tablero, ¡está listo! Imágenes: http://www.flickr.com/photos/macetech/3001651751/

  • cara de pedo dice:

    Coge unos cueros rojos superbrillantes y unos LED azules superbrillantes

    escriba un proyecto de imagen simple para modularlos y obtener datos con rs232. use una computadora para recopilar los datos y enviar los números a la imagen.

    Lo mismo en 20 minutos y mucho menos dinero gastado.

    llenarás una habitación llena de luz? no, pero la instalación de iluminación DMX funcionará de todos modos.

  • jfernsler dice:

    Agregué un toque de código al raspado de Python para convertir los valores normalizados en códigos de color hexadecimales y enviarlos por serie a mi arduino.

    Diría que funciona bien, pero todavía estamos en 0.0 🙂

    pero bueno, no dmx, solo arduino y unos cueros rojos y azules.

  • Elliott dice:

    ¿Qué números devuelve esto? Quiero hacer algo con esto, pero no soy lo suficientemente bueno en Python para obtenerlo leyendo el código. Gracias por adelantado.

  • DarkFader dice:

    mejor ponte verde

  • Mastahyeti dice:

    Modifiqué su código para hacer una elección en vivo.
    importar urllib2
    Importante
    importi os
    importa el tiempo

    def ElectionWon (ganador):
    mientras que 1: ganador impreso, "WIN !!!!!!"

    Clase CNN (objeto):
    def __init __ (mem):
    self.url = "http://www.cnn.com/ELECTION/2008/results/president/"

    def get (mem):
    "" "Devolver la papeleta
    (popular, ilegal), (popular, rector)
    "" "
    u = urllib2.urlopen (self.url)
    por línea en u.readlines ():
    res = re.search (r'var CNN_NData = (. *?); ', línea)
    si nada es Ninguno:
    datos = res.group (1)
    data = data.replace ("verdadero", "verdadero")
    data = data.replace ("falso", "falso")
    datos = eval (datos)

    d, r = Ninguno, Ninguno
    para un candidato en datos[‘P’][‘candidates’]:
    si un candidato[‘party’] == 'D':
    d = candidato[‘votes’], candidato[‘evotes’]

    si un candidato[‘winner’]:
    ElectionWon ("DEMÓCRATAS")
    candidato elif[‘party’] == 'R':
    r = candidato[‘votes’], candidato[‘evotes’]

    si un candidato[‘winner’]:
    ElectionWon ("REPUBLICANOS")
    se d[1] > r[1]: líder = “>>>>> "
    si d == r: líder = "——"
    imprimir "Demócratas del Pueblo", d[0], "Demócratas electorales:", d[1], líder, "Republicano popular:", r[0], "Elecciones republicanas:", r[1]

    volver 0

    if __name __ == '__ main__':
    cnn = CNN ()
    os.system ("borrar")
    para 1:
    cnn.get ()
    hora de dormir (2)
    os.system ("borrar")
    "" "Los usuarios de DOS reemplazan 'clear' con 'cls'" ""

  • macegr dice:

    Configuré una instrucción para mi medidor de selección, se encuentra encima de la chimenea y ahora muestra los resultados: http://www.macetech.com/blog/node/67

  • DMX Explicado dice:

    Por cierto, si alguien se pregunta qué es dmx, consulte mi enlace.

  • DMX Explicado dice:

    Mejor agrega el enlace: P

Alana Herrero
Alana Herrero

Deja una respuesta

Tu dirección de correo electrónico no será publicada.