コード例 #1
0
 def test_cuenta_lineas(self):
     gf = GestorFicheros()
     ficheros = [
         "fichero_ejemplo1.txt", "fichero_ejemplo2.txt",
         "fichero_ejemplo3.txt"
     ]
     for f in ficheros:
         num_lineas_segun_gf = gf.CountLines(f)
         num_lineas_segun_python = self.get_cantidad_lineas_fichero(f)
         self.assertEqual(num_lineas_segun_python, num_lineas_segun_gf)
コード例 #2
0
 def generar_modulo_vba(vector_tuplas,
                        nombre_tabla,
                        nombre_campo_actualizar,
                        nombre_campo_condicion,
                        nombre_modulo,
                        campo_auxiliar=None):
     gf = GestorFicheros()
     vba = ""
     prefijo_funcion = "f_{0}"
     funcion_global = "\r\nPublic Function f_global()\r\n{0}\r\nEnd Function"
     funcion_parcial = "Public Function {0}(){1}\r\nEnd Function"
     max = 100  #Se generan funciones con este maximo de sentencias
     contador = 0
     num_funcion = 1
     vba_parcial = ""
     funciones = []
     while len(vector_tuplas) != 0:
         trozo = vector_tuplas[0:max]
         nombre_funcion = "f_" + str(num_funcion)
         vba_parcial += GeneradorVBA.generar_funcion(
             trozo, nombre_funcion, nombre_tabla, nombre_campo_actualizar,
             nombre_campo_condicion, campo_auxiliar)
         vector_tuplas = vector_tuplas[max:]
         funciones.append(nombre_funcion)
         num_funcion += 1
     vba_global = "\r\n".join(funciones)
     vba_resultado = vba_parcial + funcion_global.format(vba_global)
     return "Option Explicit\r\n" + vba_resultado
コード例 #3
0
ファイル: dodo.py プロジェクト: OscarMaestre/estructurado
#!/usr/bin/python3


from subprocess import call
import platform
import os, sys


from utilidades.ficheros.GestorFicheros import GestorFicheros
import glob

gestor_fichero=GestorFicheros()

CONVERTIR="pdftotext -layout -nopgbrk "

if (platform.system()=="Linux"):
    PROCESAR="./procesar_tabla.py "
    BORRAR="rm "
if (platform.system()=="Windows"):
    PROCESAR="procesar_tabla.py "
    BORRAR="del "
    
FICH_RESULTADO="resultado.csv"
CONCAT="cat "
def aplicar_comando (comando, fichero, *args):
    cmd=comando + fichero
    for a in args:
        cmd+=" " + a
    print("Ejecutando "+cmd)
    call(cmd, shell=True)
    
コード例 #4
0
ファイル: dodo.py プロジェクト: OscarMaestre/pruebas_proceso
#!/usr/bin/env python3
from utilidades.ficheros.ProcesadorPDF import ProcesadorPDF
from utilidades.ficheros.GestorFicheros import GestorFicheros
import glob, platform



LISTAR="listar.py"
MOSTRAR_EXCLUIDOS="mostrar_excluidos.py"
ADMITIDOS="Admitidos.txt"
EXCLUIDOS="Excluidos.txt"
procesador_pdf=ProcesadorPDF()
gf=GestorFicheros()



gf.borrar_fichero (ADMITIDOS)
gf.borrar_fichero (EXCLUIDOS)

ficheros=glob.glob("*.pdf")
for f in ficheros:
    procesador_pdf.convertir_a_txt(f)
    
if platform.system()=="Linux":
    
    gf.ejecutar_comando ( "./"+LISTAR, "Admitidos_Libres.txt", "Admitido", "Libre",
                         ">> ", ADMITIDOS )
    gf.ejecutar_comando ( "./"+LISTAR, "Admitidos_Discap.txt", "Admitido", "Discapacitados",
                         ">> ", ADMITIDOS )
    gf.ejecutar_comando ( "./"+MOSTRAR_EXCLUIDOS, "Excluidos_Libre.txt", "Excluido", "Libre", "122",
                         ">> ", EXCLUIDOS)
コード例 #5
0
#!/usr/bin/env python3


import os, sys
DIR_UTILIDADES=".." + os.sep + "utilidades" + os.sep + "src"
sys.path.insert ( 0, DIR_UTILIDADES )
from utilidades.ficheros.GestorFicheros import GestorFicheros
from constantes import *

gf=GestorFicheros()
gf.crear_directorio ( SUBDIRECTORIO_HTML )

for i in range(0, TOTAL_PAGINAS):
    num = i*3
    url_descarga        = URL_PAGINAS_AL.format ( num )
    fichero_destino     = FICHERO_BASE_AL.format ( i )
    if not gf.existe_fichero( fichero_destino ):
        gf.descargar_fichero(url_descarga, fichero_destino)
コード例 #6
0
#!/usr/bin/env python3
# coding=utf-8

from utilidades.ficheros.GestorFicheros import GestorFicheros
import platform

gf=GestorFicheros()

gf.ejecutar_comando("rm", "informes/*.pdf", "informes/*.rst", "informes/*.log")

#Estos son los tipos de centro que pueden pedir en primaria
gf.ejecutar_comando ("./generar_informes.py",
                     "CEIP", "CEE", "CEPA", "AEPA", "IES", "SES", "IESO")

gf.ejecutar_comando ("./generar_informes.py", "IES", "SES", "IESO", "CIFP")

gf.ejecutar_comando("rm", "informes/*.rst", "informes/*.log", "informes/*.out")
コード例 #7
0
ファイル: dodo.py プロジェクト: OscarMaestre/estructurado
#!/usr/bin/env python3
#coding=utf-8
import os, sys


DIR_UTILIDADES=".." + os.sep + "utilidades" + os.sep + "src"
print (DIR_UTILIDADES)


sys.path.insert(0, DIR_UTILIDADES)
from utilidades.ficheros.GestorFicheros import GestorFicheros
gf=GestorFicheros()

gf.ejecutar_comando("./descargador_html.py", "")
gf.ejecutar_comando("./creador_centros.py", "")
#gf.ejecutar_comando ("cat centros_region.sql", "|", "sqlite3 ../../docencia.db")
コード例 #8
0
#print (categorias)
categoria_actual=-1
boletin=""
for f in filas_historias:
    categoria_fila=f[1]
    id=f[0]
    img=extraer_imagen(gestor_mysql, id)
    if categoria_fila!=categoria_actual:
        boletin+="<h1>" + categorias[categoria_fila]  + "</h1>"
        categoria_actual=categoria_fila
    etiqueta=generar_fila_noticia(img, PLANTILLA_NOTICIA.format(f[0], MOSTRAR_IMAGEN))
    boletin=boletin + etiqueta + "<br/>\r\n<br/>\r\n"
    
fecha_hoy=gestor_fechas.convertir_fecha_de_iso_a_estandar(fecha_hoy)

gf=GestorFicheros()
valores_para_rellenar_plantilla=dict()
valores_para_rellenar_plantilla["titulo"]=TITULO_BOLETIN.format ( fecha_hoy )
valores_para_rellenar_plantilla["fecha_hoy"]=fecha_hoy
valores_para_rellenar_plantilla["fecha_semana_pasada"]=gestor_fechas.convertir_fecha_de_iso_a_estandar(fecha_hace_una_semana)
valores_para_rellenar_plantilla["contenido"]=boletin

texto_plantilla_rellenar=gf.rellenar_fichero_plantilla("plantilla_boletin.html",
                                             valores_para_rellenar_plantilla)

texto_plantilla_rellenar=texto_plantilla_rellenar.replace("'", "\"")
#print (texto_boletin)
sql_insercion=SQL_INSERCION_BOLETIN.format (
        texto_plantilla_rellenar,
        TITULO_BOLETIN.format(fecha_hoy),
        TIMESTAMP_UNIX_DE_HOY
コード例 #9
0
                     tipo=tipo_inm,
                     descr=texto_enlace,
                     otros=otro,
                     con_garaje=garaje_incl)
        objetos.append(c)
        euros = precio_visto.contents[0].replace(".", "")
        p = Precio(inmueble=c, precio=int(euros), fecha=hoy)
        precios.append(p)
        #print (c)
        #gf.descargar_fichero ( url_in, SUBDIRECTORIO_HTML_AL + os.sep + "id_"+id_inm+".html")
    fichero.close()
    return (objetos, precios)


#total=4
gf = GestorFicheros()
lista_objetos = []
lista_precios = []
total = TOTAL_PAGINAS_AL
for i in range(1, total):
    print("Procesando pag " + str(i))
    (objetos, precios) = procesar_pagina_al(i, gf)
    lista_objetos = lista_objetos + objetos
    lista_precios = lista_precios + precios

with transaction.atomic():
    for o in lista_objetos:
        print(o.descr, o.enlace)
        o.save()

with transaction.atomic():
コード例 #10
0
ファイル: dodo.py プロジェクト: OscarMaestre/pruebas_proceso
#!/usr/bin/env python3
import glob, platform
from utilidades.ficheros.ProcesadorPDF import ProcesadorPDF
from utilidades.ficheros.GestorFicheros import GestorFicheros

procesador_pdf = ProcesadorPDF()
gf = GestorFicheros()


pdfs = glob.glob("*.pdf")

for f in pdfs:
    procesador_pdf.convertir_a_txt(f)

CONVERSOR_PRACTICAS_MAESTROS_2016 = "convertir_practicos.py"

if platform.system() == "Linux":
    gf.ejecutar_comando("./" + CONVERSOR_PRACTICAS_MAESTROS_2016, "Maestros_en_practicas_durante_2016.txt")
else:
    gf.ejecutar_comando(CONVERSOR_PRACTICAS_MAESTROS_2016, "Maestros_en_practicas_durante_2016.txt")
コード例 #11
0
ファイル: dodo.py プロジェクト: OscarMaestre/pruebas_proceso
#!/usr/bin/env python3
#coding=utf-8
import os, sys


DIR_UTILIDADES=".." + os.sep + "utilidades" + os.sep + "src"
print (DIR_UTILIDADES)


sys.path.insert(0, DIR_UTILIDADES)
from utilidades.ficheros.GestorFicheros import GestorFicheros
gf=GestorFicheros()

gf.ejecutar_comando("./descargador_html.py", "")
gf.ejecutar_comando("./procesador_centros.py", ">", "centros_region.sql")
gf.ejecutar_comando ("cat centros_region.sql", "|", "sqlite3 ../../docencia.db")
コード例 #12
0
#!/usr/bin/env python3
# coding=utf-8

import platform
import os, sys
DIR_UTILIDADES=".." + os.sep + "utilidades" + os.sep + "src"
sys.path.insert(0, DIR_UTILIDADES)
from utilidades.ficheros.GestorFicheros import GestorFicheros


FICHERO_CSV="centros_region.csv"
BD=".." + os.sep + ".." + os.sep + "docencia.db"
gf=GestorFicheros()

COMANDO_ECHO="echo"
comandos="""
.mode csv
.headers ON
.separator :
select * from centros_region;
.quit
"""


if platform.system()=="Linux":
    COMANDO_ECHO = "echo \"{0}\"".format(comandos)
else:
    COMANDO_ECHO = "echo {0}".format(comandos)

gf.ejecutar_comando ( COMANDO_ECHO, "|", "sqlite3 " + BD, ">", FICHERO_CSV)
コード例 #13
0
import sys, os


from utilidades.ficheros.ProcesadorPDF import ProcesadorPDF
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import create_engine, text, and_
from sqlalchemy.orm import sessionmaker
from sqlalchemy import Column, Integer, String

from utilidades.modelos.Modelos import *
from utilidades.fechas.GestorFechas import GestorFechas
from utilidades.ficheros.GestorFicheros import GestorFicheros

gestor_fechas=GestorFechas()
gestor_ficheros=GestorFicheros()
fecha_hoy=gestor_fechas.get_hoy_iso()

NUMEROS_DNI_A_OCULTAR=0

DIRECTORIO_PLANTILLAS="." + os.sep + "plantillas"
DIRECTORIO_RESULTADOS="." + os.sep + "resultados"
PLANTILLA_INFORME  = DIRECTORIO_PLANTILLAS + os.sep + "plantilla_informe.html"
CAD_CONEXION=sys.argv[1]
CODIGO_ESPECIALIDAD=sys.argv[2]
PLANTILLA_SQL="""
    select especialidad, fecha_inicio, fecha_fin
        from nombramientos where
            nif='{0}'
            order by fecha_procedimiento desc
            
コード例 #14
0
ファイル: descargar.py プロジェクト: OscarMaestre/prueba_http
#!/usr/bin/env python3
#coding=utf-8

from utilidades.ficheros.GestorFicheros import GestorFicheros
import constantes
import bs4, glob, os
from mako.template import Template

gf=GestorFicheros()

for i in range(0, 14):
    FICHERO_DESTINO=constantes.RUTA_FICHEROS_DESCARGADOS.format(i)
    if not gf.existe_fichero ( FICHERO_DESTINO ): 
        gf.descargar_fichero (constantes.URL_BASE.format ( i ),
                          FICHERO_DESTINO)
        
        
contador_comics=0
for i in range(0, 14):
    FICHERO_A_PROCESAR=constantes.RUTA_FICHEROS_DESCARGADOS.format(i)
    sopa=bs4.BeautifulSoup ( open(FICHERO_A_PROCESAR, "r"), "html5lib" )
    divs_miniatura=sopa.find_all("div", "bg_comic")
    for div in divs_miniatura:
        enlace=div.find("a")
        URL_COMIC = constantes.URL + enlace["href"]
        print (URL_COMIC)
        COMIC_DESCARGA=constantes.RUTA_COMICS_DESCARGADOS.format ( contador_comics )
        if not gf.existe_fichero ( COMIC_DESCARGA ):
            gf.descargar_fichero ( URL_COMIC, COMIC_DESCARGA )
        contador_comics=contador_comics + 1
        
コード例 #15
0
#!/usr/bin/env python3
#coding=utf-8
from utilidades.ficheros.GestorFicheros import GestorFicheros
modificaciones=[
    ("La Torre de Esteban Hambran", "Torre de Esteban Hambran"),
    ("Cortijos de Arriba", "Cortijo de Arriba"),
    ("Villafranca de los Caballeros", "Villafranca de los"),
    ("Las Ventas con Peña Aguilera", "Ventas Con Peña Aguilera"),
    ("Herrera de la Mancha", "Centro Penitenciario Herrera")
]

gf=GestorFicheros()
sql_modificar_origen="update rutas set origen='{0}' where origen='{1}';"
sql_modificar_destino="update rutas set destino='{0}' where destino='{1}';"
ARCHIVO_BD="rutas.db"
for m in modificaciones:
    pueblo_antes=m[0]
    pueblo_como_debe_quedar=m[1]
    comando_sql_1=sql_modificar_origen.format (pueblo_antes, pueblo_como_debe_quedar)
    gf.ejecutar_comando(
        "echo \"" + comando_sql_1+ "\"", "| sqlite3 "+ARCHIVO_BD
    )
    comando_sql_2=sql_modificar_destino.format (pueblo_antes, pueblo_como_debe_quedar)
    gf.ejecutar_comando(
        "echo \"" + comando_sql_2+ "\"", "| sqlite3 "+ARCHIVO_BD
    )
コード例 #16
0
ファイル: dodo.py プロジェクト: OscarMaestre/pruebas_proceso
#!/usr/bin/env python3

from utilidades.ficheros.ProcesadorPDF import ProcesadorPDF
from utilidades.ficheros.GestorFicheros import GestorFicheros

import glob, platform

ficheros_maestros = glob.glob("*.pdf")
procesador_pdf = ProcesadorPDF()
gf = GestorFicheros()

for f in ficheros_maestros:
    procesador_pdf.convertir_a_txt(f)

ficheros_convertidos = glob.glob("*.txt")
for f in ficheros_convertidos:
    if platform.system() == "Linux":
        gf.ejecutar_comando("./procesar_concursillo_maestros.py", f, "> concursillo_maestros_julio_2016.vba")
    else:
        gf.ejecutar_comando("procesar_concursillo_maestros.py", f, "> concursillo_maestros_julio_2016.vba")
コード例 #17
0
ファイル: dodo.py プロジェクト: OscarMaestre/estructurado
import glob
from utilidades.ficheros.ProcesadorPDF  import ProcesadorPDF
from utilidades.ficheros.GestorFicheros import GestorFicheros

ficheros_pdf = ["LocalidadesColegiosCGTConvocadoNov2015.pdf",
                "LocalidadesIESCGTConvocadoNov2015.pdf",
                "LocalidadesEACGTConvocadoNov2015.pdf",
                "LocalidadesEOICGTConvocadoNov2015.pdf",
                 "LocalidadesCPMCGTConvocadoNov2015.pdf",
                 "LocalidadesCEPASCGTConvocadoNov2015.pdf",
                 "LocalidadesCEECGTConvocadoNov2015.pdf",
                 "LocalidadesCPMCGTConvocadoNov2015.pdf"]

procesador_pdf = ProcesadorPDF()
gf=GestorFicheros()

nombre_fichero_coles_txt    =   procesador_pdf.convertir_a_txt ( ficheros_pdf[0] )
nombre_fichero_ies_txt      =   procesador_pdf.convertir_a_txt ( ficheros_pdf[1] )
nombre_fichero_ea_txt       =   procesador_pdf.convertir_a_txt ( ficheros_pdf[2] )
nombre_fichero_eoi_txt      =   procesador_pdf.convertir_a_txt ( ficheros_pdf[3] )
nombre_fichero_cpm_txt      =   procesador_pdf.convertir_a_txt ( ficheros_pdf[4] )
nombre_fichero_cepas_txt    =   procesador_pdf.convertir_a_txt ( ficheros_pdf[5] )
nombre_fichero_cees_txt     =   procesador_pdf.convertir_a_txt ( ficheros_pdf[6] )
nombre_fichero_cpms_txt     =   procesador_pdf.convertir_a_txt ( ficheros_pdf[7] )

    
gf.ejecutar_comando ( "./procesar_cee.py", nombre_fichero_cees_txt)
gf.ejecutar_comando ( "./procesar_cpm.py", nombre_fichero_cpms_txt)
gf.ejecutar_comando ( "./procesar_colegios.py", nombre_fichero_coles_txt)
gf.ejecutar_comando ( "./procesar_ea.py", nombre_fichero_ea_txt)
コード例 #18
0
    sesion = creador_sesiones()
    MiBase.metadata.create_all(motor)
    grupos = ["Todos", "Maestros interinos", "Maestros funcionarios", "EEMM Interinos", "EEMM Funcionarios"]
    lista_grupos_a_crear = []
    for g in grupos:
        g = GrupoMensajeria(nombre=g)
        lista_grupos_a_crear.append(g)

    sesion.add_all(lista_grupos_a_crear)
    sesion.commit()


NUM_SUBDIRECTORIOS_ANTERIORES = 3
FICHERO_CONFIGURACION = ((".." + os.sep) * NUM_SUBDIRECTORIOS_ANTERIORES) + "configuracion_telegram.txt"

gestor_ficheros = GestorFicheros()

token = gestor_ficheros.leer_linea_fichero(0, FICHERO_CONFIGURACION)

crear_grupos()
gestor_telegram = GestorTelegram(token)

ultima_actualizacion = 0
while True:
    print("Ultima actualizacion:" + str(ultima_actualizacion))
    sleep(SEGUNDOS_ENTRE_ACTUALIZACIONES)
    respuesta = gestor_telegram.getUpdates(offset=ultima_actualizacion)
    for r in respuesta:
        (es_alta, tal_vez_dni) = r.es_alta()
        if es_alta:
            print("Intento de ALTA")
コード例 #19
0
ファイル: dodo.py プロジェクト: OscarMaestre/pruebas_proceso
#!/usr/bin/env python3

from utilidades.ficheros.ProcesadorPDF import ProcesadorPDF
from utilidades.ficheros.GestorFicheros import GestorFicheros

import glob, platform

ficheros_eemm=glob.glob("*.pdf")
procesador_pdf=ProcesadorPDF()
gf=GestorFicheros()

for f in ficheros_eemm:
    procesador_pdf.convertir_a_txt ( f )
    
ficheros_convertidos=glob.glob("*.txt")
for f in ficheros_convertidos:
    if platform.system()=="Linux":
        gf.ejecutar_comando ( "./procesar_concursillo_eemm.py",
                         f, ">", f+".vba")
    else:
        gf.ejecutar_comando ( "procesar_concursillo_eemm.py",
                         f, ">", f+".vba")
コード例 #20
0
ファイル: dodo.py プロジェクト: OscarMaestre/sqley
#!/usr/bin/env python3
#coding=utf-8


from utilidades.ficheros.GestorFicheros import GestorFicheros
import platform, glob

gf=GestorFicheros()

lineas_borrado=gf.get_lineas_fichero ( "borrar.sql" )
for l in lineas_borrado:
    gf.enviar_texto_a_comando ( l, "sqlite3 ciclos.db")
    

EXTRACCION_MODULOS="""
SELECT mod.id, mod.nombre, mod.horas_semanales, g.nombre_grupo, ciclos.nivel_profesional
    from ciclos, modulos as mod, grupos as g, cursos as cur
        where
            mod.curso_id=cur.id
        and
            especialidad<>'PT'
        and
            g.curso_id=cur.id
        and
            cur.ciclo_id=ciclos.id
        
    order by horas_semanales desc, num_curso desc, nivel_profesional desc;
"""

if platform.system()=="Windows":
    gf.ejecutar_comando ( "ciclo.py", "daw.yaml", "DAW")
コード例 #21
0
ファイル: dodo.py プロジェクト: OscarMaestre/estructurado
#!/usr/bin/python3



import platform
import glob
import os, sys

from utilidades.ficheros.GestorFicheros import GestorFicheros

gf=GestorFicheros()

CONVERTIR="pdftotext -layout -nopgbrk "

if (platform.system()=="Linux"):
    PROCESAR="./procesar_tabla.py "
    BORRAR="rm "
if (platform.system()=="Windows"):
    PROCESAR="procesar_tabla.py "
    BORRAR="del "
    
FICH_RESULTADO="resultado.csv"
CONCAT="cat "

ficheros_pdf=glob.glob("*.pdf")

for f in ficheros_pdf:
    nuevo_nombre=gf.reemplazar_espacios(f)
    gf.renombrar_fichero(f, nuevo_nombre)

ficheros_pdf=glob.glob("*.pdf")
コード例 #22
0
ファイル: dodo.py プロジェクト: OscarMaestre/pruebas_proceso
import platform
import glob
import os, sys

NUM_SUBDIRECTORIOS_ANTERIORES=2
SEPARADOR=os.sep

RUTA_PAQUETE_BD=(".."+SEPARADOR) * NUM_SUBDIRECTORIOS_ANTERIORES
DIRECTORIO= RUTA_PAQUETE_BD + os.sep + "utilidades" + os.sep + "src"
#aqui = os.path.dirname(os.path.abspath(__file__))
sys.path.insert(0, DIRECTORIO)

from utilidades.ficheros.GestorFicheros import GestorFicheros
from utilidades.basedatos.GestorBD import GestorBD

gf=GestorFicheros()

CONVERTIR="pdftotext -layout -nopgbrk "

if (platform.system()=="Linux"):
    PROCESAR="./procesar_tabla.py "
    PROCESAR_MAESTROS="./procesar_tabla_maestros.py "
    BORRAR="rm "
if (platform.system()=="Windows"):
    PROCESAR="procesar_tabla.py "
    PROCESAR_MAESTROS="procesar_tabla_maestros.py "
    BORRAR="del "
    
FICH_RESULTADO="resultado.csv"
CONCAT="cat "
コード例 #23
0
from bs4 import BeautifulSoup #sudo pip3 install BeautifulSoup4

from utilidades.ficheros.GestorFicheros import GestorFicheros
from utilidades.basedatos.Configurador import Configurador
from constantes import *

import os
import django
from django.db import transaction


configurador=Configurador (os.path.sep.join (["..", ".."]) )
configurador.activar_configuracion ( "gestion.settings")
from modelado_bd.models import *

gf=GestorFicheros()

def extraer_cadena_div(div_padre, etiqueta, clase_css):
    elemento_extraido=div_padre.find(etiqueta, clase_css)
    if elemento_extraido==None:
        return ""
    cad=elemento_extraido.string.strip()
    return cad

def procesar_archivo_centro(nombre_archivo):
    lista_ensenanzas=[]
    descriptor_fichero= open ( nombre_archivo, "r" )
    sopa = BeautifulSoup ( descriptor_fichero, "html.parser")
    div_tabla_ensenanzas=sopa.find_all("tr", "valueDetail")
    for div in div_tabla_ensenanzas:
        nombre_ensenanzas   = extraer_cadena_div ( div, "td", "valueDetailViewENSEÑANZA")
コード例 #24
0
configurador=Configurador (os.path.sep.join ([".."]) )

configurador.activar_configuracion ( "gestion.settings")
from modelado_bd.models import *


def crear_objeto (dni_pasado, ap1, ap2, nombre_pasado,
                  email_pasado, sexo_pasado, fecha_nac_pasada,
                  domicilio_pasado, localidad_pasada, cp_pasada, provincia_pasada,
                  iban_pasado, ccc_pasado):
    return GaseoWeb(
        dni=dni_pasado,apellido_1=ap1, apellido_2=ap2, nombre=nombre_pasado
    )

path =os.path.dirname(os.path.abspath ( __file__ ))
gf=GestorFicheros()
zip_ref = zipfile.ZipFile("Afiliados.zip", 'r')
zip_ref.extractall(path)
zip_ref.close()
#gf.borrar_fichero ( "Afiliados.zip")
descriptor_fichero=open ("Afiliados.xls", "r")
gf.renombrar_fichero ( "Afiliados.xls", "Afiliados.html")
fichero=open("Afiliados.html")
sopa = BeautifulSoup ( fichero, "html.parser")

tbody=sopa.find("tbody")
filas=tbody.find_all("tr")
objetos=[]
for fila in filas:
    celdas=fila.find_all("td")
    dni         =   celdas[0].text
コード例 #25
0
ファイル: dodo.py プロジェクト: OscarMaestre/estructurado
#!/usr/bin/python3


from subprocess import call
import platform

import os, sys


from utilidades.ficheros.GestorFicheros import GestorFicheros

gf=GestorFicheros()


CONVERTIR="pdftotext -layout -nopgbrk "

if (platform.system()=="Linux"):
    PROCESAR="./procesar_tabla.py "
    BORRAR="rm "
if (platform.system()=="Windows"):
    PROCESAR="procesar_tabla.py "
    BORRAR="del "
FICH_RESULTADO="resultado.csv"
CONCAT="cat "
def aplicar_comando (comando, fichero, *args):
    cmd=comando + fichero
    for a in args:
        cmd+=" " + a
    print("Ejecutando "+cmd)
    call(cmd, shell=True)
    
コード例 #26
0
prov_cr=Provincia.objects.filter(provincia="CR")
print (prov_cr)
localidades=Localidad.objects.filter(provincia=prov_cr)
print (localidades)

item_pueblo="""
- ``{0}`` {1}  ({2}, {3} km)
"""
item_centro="""
  -``{0}`` {1}
    
"""
        
        
gf=GestorFicheros()
for l in localidades:
    nombre_para_archivos=rectificar_nombre_localidad (l.nombre_localidad)
    nombre_para_archivos=nombre_para_archivos.replace(" ", "_")
    nombre_para_archivos=nombre_para_archivos+"_"+sufijo_archivo
    #El nombre de la localidad de origen puede tener muchos otros errores
    #como llevar el articulo delante. Lo corregimos con esta
    #funcion que esta en modelado_bd.models
    
    archivo_rst=RUTA_INFORMES + os.sep + nombre_para_archivos +".rst"
    archivo_tex=RUTA_INFORMES + os.sep + nombre_para_archivos +".tex"
    print (archivo_rst, archivo_tex)
    informe=generar_informe ( l, filtrado )
    descriptor=open(archivo_rst, "w")
    descriptor.write(informe)
    descriptor.close()
コード例 #27
0
ファイル: dodo.py プロジェクト: OscarMaestre/pruebas_proceso
from utilidades.ficheros.GestorFicheros import GestorFicheros
import glob, platform


if platform.system() == "Linux":
    PROCESAR = "./procesar.py"
else:
    PROCESAR = "procesar.py"
if platform.system() == "Linux":
    PROCESAR_EXCLUIDOS = "./procesar_excluidos.py"
else:
    PROCESAR_EXCLUIDOS = "procesar_excluidos.py"
RESULTADOS = "Resultados.txt"

procesador_pdf = ProcesadorPDF()
gf = GestorFicheros()

gf.borrar_fichero(RESULTADOS)

ficheros = glob.glob("*.pdf")
for f in ficheros:
    procesador_pdf.convertir_a_txt(f)

ficheros_admitidos = glob.glob("Admitidos5*.txt")

for f in ficheros_admitidos:
    gf.ejecutar_comando(PROCESAR, f, ">>", RESULTADOS)


ficheros_excluidos = glob.glob("Excluidos5*.txt")
コード例 #28
0
ファイル: dodo.py プロジェクト: OscarMaestre/estructurado
    select nombre, fecha
        from {0}
        where nombre like 'Asigna%' and fecha in
            (
                select max(fecha) from {0}
            )
    """.format (TABLA_PROCEDIMIENTOS )

cursor = connection.cursor()
cursor.execute ( ultimo_proceso )
fila=cursor.fetchone()
nombre_ultima_asignacion=fila[0]
fecha_ultima_adjudicacion=fila[1]
#print (nombre_ultima_asignacion, fecha_ultima_adjudicacion)


gf=GestorFicheros()
gf.ejecutar_comando ("./procesar2.py", "Ultima0590.pdf", "0590")
gf.ejecutar_comando ("./procesar2.py", "Ultima0591.pdf", "0591")
gf.ejecutar_comando ("./procesar2.py", "Ultima0597.pdf", "0597")

#Se borran las personas que ya tienen nombramiento

borrado_ultimos="""
    delete from {0} where dni in
        (
            select nif from {1} where proceso_id='{2}'
        )
""".format (TABLA_DISPONIBLES, TABLA_NOMBRAMIENTOS, nombre_ultima_asignacion)
cursor.execute ( borrado_ultimos )
コード例 #29
0
#!/usr/bin/env python3
#coding=utf-8
import sys
import bs4

from utilidades.ficheros.GestorFicheros import GestorFicheros
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from time import sleep

ID_TABLA="afiliados_cons_table"
gf=GestorFicheros()

ff=webdriver.Firefox()
ff.get("https://anpesindicato.org/afiliacion/index.php/acl/login")
elemento=ff.find_element_by_name("username")
elemento.send_keys(sys.argv[2])
elemento=ff.find_element_by_name("password")
elemento.send_keys(sys.argv[3])


elemento = ff.find_element_by_id("submit")
elemento.click()




TIEMPO_ENTRE_CARGA=10
TIEMPO_ESCRITURA=10
lineas=gf.get_lineas_fichero(sys.argv[1])
for l in lineas[0:10]:
コード例 #30
0
#!/usr/bin/env python3
#coding=utf-8

from utilidades.ficheros.GestorFicheros import GestorFicheros
import glob, platform, sys, os

from datetime import date

hoy=date.today()
fecha_hoy=hoy.strftime("%Y%m%d")
print (fecha_hoy)


gf=GestorFicheros()

patrones=["al/*.html", "to/*.html"]

for p in patrones:
    ficheros_a_borrar=glob.glob(p)
    for f in ficheros_a_borrar:
        gf.borrar_fichero ( f )
        
FICHERO_RESULTADO="resultados" + os.sep +"resultados.html".format(fecha_hoy)

if platform.system()=="Linux":
    DESCARGADOR_AL      =   "./descargador_html_al.py"
    DESCARGADOR_TO      =   "./descargador_html_to.py"
    PROCESAR_ID_AL      =   "./procesar_id.py"
    PROCESAR_ID_TO      =   "./procesar_to.py"
    CREAR_ESTADISTICAS  =   "./crear_estadisticas.py"
else:
コード例 #31
0
ファイル: dodo.py プロジェクト: OscarMaestre/pruebas_proceso
from sqlalchemy import create_engine, text, and_
from sqlalchemy.orm import sessionmaker
from sqlalchemy import Column, Integer, String

from utilidades.modelos.Modelos import *

from utilidades.ficheros.GestorFicheros import GestorFicheros
import os

NUM_SUBDIRECTORIOS_ANTERIORES=2
DOCENCIA=( (".."+os.sep) * NUM_SUBDIRECTORIOS_ANTERIORES) + "docencia.db"
FICHERO_NOMBRAMIENTOS_SQL="nombramientos.sql"

ARCHIVO_BD="bolsas.db"
CAD_CONEXION="sqlite:///{0}".format ( ARCHIVO_BD )
gestor_ficheros=GestorFicheros()

gestor_ficheros.borrar_fichero ( ARCHIVO_BD )
gestor_ficheros.ejecutar_comando("./procesar_597_convocadas.py", CAD_CONEXION)
gestor_ficheros.borrar_fichero ( FICHERO_NOMBRAMIENTOS_SQL )
gestor_ficheros.exportar_tabla ( DOCENCIA, "nombramientos", FICHERO_NOMBRAMIENTOS_SQL, ARCHIVO_BD,
                                borrar_fichero_sql_intermedio=False)
gestor_ficheros.borrar_fichero ( FICHERO_NOMBRAMIENTOS_SQL )
gestor_ficheros.ejecutar_comando("./procesar_ultima_relacion_maestros.py", CAD_CONEXION)

motor= create_engine( CAD_CONEXION , echo=False)
creador_sesiones= sessionmaker(bind=motor)
sesion=creador_sesiones()

especialidades_con_interinos_en_bolsa=sesion.query(UltimaRelacionInterinosBolsas.codigo_especialidad).distinct()
for e in especialidades_con_interinos_en_bolsa:
コード例 #32
0
#!/usr/bin/python3

from utilidades.ficheros.GestorFicheros import GestorFicheros

gf=GestorFicheros()
lineas_fichero=gf.get_lineas_fichero("contenidos.txt")

for l in lineas_fichero:
    if l=="":
        continue
    nueva=l.replace("\n", "-------------------------------------------------------------")
    print(l+"\n-----------------------------------------------------------------------------------------------\n\n")