[ayuda] Consejos para nuevo en Python

Iniciado por W17CH3R, 23 Marzo 2020, 15:27 PM

0 Miembros y 2 Visitantes están viendo este tema.

W17CH3R

Buenas a todos, actualmente empece un curso online basico para aprender Python, mis conocimientos de programación es muy baja (casi nula), solo tengo conocimientos bajos/medios en Shell Script, y avanzados en HTML y CSS.

Mi pregunta, es como podría realizar un menu gráfico en consola como ocurre con case porque buscado en la red sobre realizar un grafico por Python  y no encuentro nada en claro si es posible con case u otra alternativa.

Aquí esta mi codigo realizado en Shell Bash Script ya que solo es una interfaz que ejecuta otros scripts que tengo realizados que ejecutan varias funciones:
# Scripts que se ejecutara mediante un case
#/bin/bash

clear
toilet --filter border "Bienvenido";
read -p "Pulse [ENTER] para comenzar o de lo contrario [ctrl + c] para cancelar ...";
clear
echo "----------------------------------------------------------------------";
toilet --metal "Opciones";
echo "----------------------------------------------------------------------";
echo "1. Información del sistema";
echo "2. Busqueda de intrusos y virus";
echo "3. Antirootkit";
echo "4. Seguridad Avanzada en general";
echo "5. Salir completamente del programa";
echo -n "Eliga una opcion entre [1 - 5] ";
read opcion
case $opcion in
1) . screen.sh;;
2) . analisis.sh;;
3) . antirootkit.sh;;
4) . seguridad.sh;;
5)toilet --metal "Hasta luego";
./oneko -sakura -bg green -position 18;
exit 1;;
*)echo "Solamente opciones del 1 al 5";;
esac


Y aquí una captura de como se ve en consola una vez ejecutado, y de saber si es posible realizar un menu grafico similar en Python:

La importancia de los Datos es la importancia de los Recuerdos.

.:Xx4NG3LxX:.

#1
Pues... No soy de Python, aunque sí me estoy metiendo de a poco en él, pásate por aquí, de seguro encuentras algo.

PD: A ver si me enseñas algo de HTML y CSS ;P
"Quizá Batch no sea un lenguaje de programación, pero no obstante deja de ser útil. Asi que no anden diciendo «Que ganas de perder el tiempo»"



W17CH3R

#2
Cita de: .:Xx4NG3LxX:. en 23 Marzo 2020, 16:56 PM
Pues... No soy de Python, aunque sí me estoy metiendo de a poco en él, pásate por aquí, de seguro encuentras algo.

PD: A ver si me enseñas algo de HTML y CSS ;P

Gracias, le voy a echar un vistazo la web, en cuanto lo segundo soy muy mal profesor :xD

Lo aprendí lo básico en SMR de FP Grado medio, y por mi cuenta por cursos avanzados lo fuí perfeccionando, para no disvirtuar el tema, te puedo recomendar por mensaje privado  algunos cursos online (gratuitos son a nivel basico o introdución) que fueron recomendados por mis profesores y me sirvio de mucha ayuda.

saludos.

Edito: Tampoco dicen nada en la página que me has pasado acerca de una interfaz gráfica con Python, gracias por la ayuda  :)
La importancia de los Datos es la importancia de los Recuerdos.

.:Xx4NG3LxX:.

#3
Buscaré otra cosa a ver si te ayuda...

Si me gustaría que me pasarás esas recomendaciones. Muchas gracias y de nada... Xd

EDITO: Encontré esto:

http://decodigo.com/python-3-crear-ventana-o-interfaz-grafica-gui

https://python-para-impacientes.blogspot.com/2015/12/tkinter-interfaces-graficas-en-python-i.html?m=1

https://www.clubdetecnologia.net/blog/2017/tres-frameworks-de-python-para-interface-de-usuario/

Y siguiendo con la página que te pasé al principio...

Mi diario Python
"Quizá Batch no sea un lenguaje de programación, pero no obstante deja de ser útil. Asi que no anden diciendo «Que ganas de perder el tiempo»"



EdePC

Saludos,

- Si te estás refiriendo a los clásicos Menús en Consola se hace similar a Bash, solo que en Python no hay Switch, con puros If debería de bastar para no complicarse demasiado implementando un Switch a mano.

- Ejemplo en Python 3 :

Código (python) [Seleccionar]
#!/user/bin/python

print('''
--------------------------------------------
   ___             _                       
  / _ \ _ __   ___(_) ___  _ __   ___  ___
| | | | '_ \ / __| |/ _ \| '_ \ / _ \/ __|
| |_| | |_) | (__| | (_) | | | |  __/\__ \\
  \___/| .__/ \___|_|\___/|_| |_|\___||___/
       |_|                                 
--------------------------------------------
1. Información del sistema
2. Busqueda de intrusos y virus
3. Antirootkit
4. Seguridad Avanzada en general
5. Salir completamente del programa
''')

opcion = input('Eliga una opcion entre [1 - 5] ')

if opcion == '1' :
  print("Ud. ha elegido la opcion 1")
elif opcion == '2' :
  print("Ud. ha elegido la opcion 2")
elif opcion == '3' :
  print("Ud. ha elegido la opcion 3")
elif opcion == '4' :
  print("Ud. ha elegido la opcion 4")
elif opcion == '5' :
  print("Ud. ha elegido la opcion 5")
else :
  print("Opción inválida")


- Si estás buscando Menús en Consola más "complejos" puedes importar alguna librería que lo haga, por ejemplo Console-Menu que tiene soporte para python 2 y 3 a la vez: https://github.com/aegirhall/console-menu


zellion

Buenas W17CH3R, si lo que quieres es una aplicación gráfica, echa un vistazo a la biblioteca tkinder. En internet podrás encontrar más información y cursos sobre esa biblioteca.

Espero que te sirva.

.:Xx4NG3LxX:.

En uno de los links que coloqué, creo que hay ayuda sobre tkinder y otras bibliotecas.
"Quizá Batch no sea un lenguaje de programación, pero no obstante deja de ser útil. Asi que no anden diciendo «Que ganas de perder el tiempo»"



@XSStringManolo

Usa Kivy como librería de gráficos para Python.

De todas formas si ya sabes HTML y CSS seguro que tienes libreías que te permitan utilizarlos como interfaz para tus aplicaciones. Si no te vas a enfocar a IA, Big Data o Networking a bajo nivel deberías en su lugar optar por aprender javascript ya que es imprescindible para Web y a la vez te sirve para escritorio multiplataforma.

W17CH3R

#8
@.:Xx4NG3LxX:. Gracias le echare un vistazo, y en breve te hablo por mensaje privado acerca de html y css :)

@EdePC Precisamente la segunda opción que dices de menu más avanzado, es lo que estaba buscando!! Lo voy a probar, para ver que resultados obtendre con Python.

@zellion Bueno interfaz gráfica, no sería lo que estoy buscando, ya que son muchos scripts trabajando en python, y ejecutarlos bajo una GUI, me saturaría las maquinas virtuales, que utilizo para trabajar.

@XSStringManolo Tienes razón, pero son scripts más enfocados al networking (Lan y puertos de salida), y analisis forense, pero más enfocado a la protección de nodos de una red a servidor/cliente. De todas formas lo tendre en cuenta tu consejo, y lo probare también.

Gracias por vuestras respuestas, os acabado de leer a todos, e intente responderos en el mismo mensaje, también tengo que reconocer que sigo esta web desde 2006, y aprendi mucho gracias a esta web, y no fue hasta este 2020 que quise registrarme para poder ayudar también, (valga la remundancia que al final fui yo ayudado y no al reves :xD)

Provare todas vuestras ideas, consejos y editare este mensaje, y vere si no solo poder usar la interfaz en Python, si no como algunas sugerencias vuestras, perfeccionar para proteger la protección de datos.

Gracias de nuevo! :)

Edito:
Gracias @EdePC, era exactamente lo que necesitaba, @zellion tu idea la tomare en cuenta de la interfaz gráfica en algun futuro proyecto cuando tenga una buena base en programación, me sera muy util, @XSStringManolo tus ideas acerca de bibliotecas sobre tkinder lo probare, para Web sobretodo enfocado en pentesting que es lo que deseo especializarme,, y @.:Xx4NG3LxX:. te doy las gracias por el esfuerzo de ayudarme, te mande un mensaje privado acerca de html y css, no se si lo habras leído, ya que me ayudo bastante esas recomendaciones que nos dio el profesor en su dia en clase para ir subiendo más el nivel de html y css.
La importancia de los Datos es la importancia de los Recuerdos.

.:Xx4NG3LxX:.

De nada, y... Gracias. El MP me llegó, le echaré un vistazo, muchas gracias!!! Espero sigas avanzando mas y mas...
"Quizá Batch no sea un lenguaje de programación, pero no obstante deja de ser útil. Asi que no anden diciendo «Que ganas de perder el tiempo»"