#!/usr/bin/env python '''Creamos una base de datos de pruebas y la usamos para una consulta simple.''' __shell_usage__ = ''' Este es un programa de ejemplo. Solo le debes de pasar como argumento el nombre del fichero de la base de datos que quieres crear.''' __version__ = 'Ejemplo de uso del modulo bsddb (Base de datos de Berkeley)' __author__='Arturo Suelves (arturosa@lycos.es)' import bsddb #Modulo de base de datos berkeley import sys,os def crear_base_datos(fichero): db = bsddb.btopen(fichero, 'c') for i in range(1000): db[str(i)]='Elemento_'+str(i) print 'Imprimimos el primer elemento de la base: ',db.first() print 'Imprimimos el siguiente elemento de la base: ',db.next() db.sync() #Importante: Para sincronizar la base en el disco,osea para grabarla db.close def leer_de_la_base_datos(fichero): db = bsddb.btopen(fichero, 'r') elemento=raw_input('Numero del elemento a buscar: ') print db.set_location(elemento) db.close if __name__ == '__main__': if sys.argv[1] == '--help': print __shell_usage__ else: fichero_base_datos=sys.argv[1] crear_base_datos(fichero_base_datos) leer_de_la_base_datos(fichero_base_datos) print 'Programa finalizado.\n' sys.exit()
Crear y leer de base de datos BERKELEY.
Enviar mensajes a una lista de direcciones
# -*- coding: utf-8 -*-
'''Programa para enviar un mensaje a una lista de direcciones de e-mail.'''
__shell_usage__ ='''Este programa envia un mensaje a una lista de direcciones de e-mail.
El fichero de direcciones debe de tener una direccion de e-mail por linea.
El fichero con el cuerpo del mensaje debe de estar en formato texto.
El puerto de SMTP es el 25.'''
__version__ ='Ejemplo de uso del modulo smtplib (protocolo SMTP)'
__author__='Arturo Suelves (arturosa@lycos.es)'
import smtplib
import sys
def enviar_mensajes_a_lista_de_correo(mail_enviador,asunto,servidorsmtp,puertosmtp):
fichero_con_lista_direcciones=raw_input('Introducir path completo del fichero de direcciones: ')
fichero_con_cuerpo_mensaje=raw_input('Introducir path completo del fichero con el cuerpo del mensaje: ')
fichero_con_mensajes_enviados=raw_input('Introducir path completo para fichero log de mensajes enviados: ')
fld=open(fichero_con_lista_direcciones,'r')
fme=open(fichero_con_mensajes_enviados,'w')
for i in fld.readlines():
try:
mensaje = "From: "+mail_enviador+"\nSubject: "+asunto+"\nTo: "+i+"\n"
fcm=open(fichero_con_cuerpo_mensaje,'r')
print '\nMensaje para: '+i
for ii in fcm.readlines():
mensaje=mensaje+ii
fcm.close()
print 'Abierto fichero del cuerpo del mensaje...\n'
server = smtplib.SMTP(servidorsmtp,int(puertosmtp))
print '\nImprimiendo la informacion de debug de la conexion con el servidor SMTP.\n'
server.set_debuglevel(1)
#Esta linea sirve para imprimir informacion de debuger sobre el proceso de enviar los mensajes
server.sendmail(mail_enviador, i, mensaje)
fme.write('Mensaje enviado a:'+i)
print 'Mensaje enviado a: '+i
server.quit()
except:
print 'Error enviando el fichero a: '+ i
fme.write('Error enviado el fichero a: '+i)
fld.close()
fme.close()
if __name__ == '__main__' :
print '''Uso:
Este programa envia un mensaje a una lista de direcciones de e-mail.
El fichero de direcciones debe de tener una direccion de e-mail por linea.
El fichero con el cuerpo del mensaje debe de estar en formato texto.
El puerto de SMTP estandard es el 25.
'''
enviador_mensaje=raw_input('Introducir e-mail del enviador: ')
asunto_mensaje=raw_input('Introducir asunto del mensaje: ')
servidorsmtp_mensaje=raw_input('Introducir servidor de SMTP: ')
puertosmtp_mensaje=raw_input('Introducir puerto del SMTP : ')
enviar_mensajes_a_lista_de_correo(enviador_mensaje,asunto_mensaje,servidorsmtp_mensaje,puertosmtp_mensaje)
print 'Programa finalizado.\n'
sys.exit()
Suscribirse a:
Comentarios (Atom)