Web Scraping

Buenos días.
Llevo poco tiempo usando Python, antes programaba en Java.
Recientemente he hecho una app en python para controlar los libros de mi biblioteca usando Mongo DB, tkinter y CustomerTkinter. Ahora mi idea es hacer una aplicación web utilizando: Mongo DB, html5, CSS-3 y Python en el backend.
La dificultad que me estoy encontrando es que nos sé como obtener la información de los de HTML y de otros tags en los que el usuario introduce información. Sé que con PHP lo tengo resuelto pero mi idea era utilizar Python.
Si es posible os agradecería que me recomendaseis libros, al ser posible que no sean caros (estoy jubilado), webs o cualquier otro tipo de información para poder acometer este reto.
También necesitaría conocer donde podría albergar la app web (hosting) por si me decido a hacerla accesible a otros.
Muchas gracias por vuestra atención.
Un saludo.

Mongo DB, html5, CSS-3 y Python en el backend.

Creo que lo importante aquí es que definas un poco mejor lo de ‘python en el backend’. Para hacer una aplicación web en python lo suyo sería usar un framework web como django [1], flask [2], etc. Una vez que definas qué quieres utilizar tendrás varias opciones.

Otra opción es que mezcles ‘html5, CSS-3 y Python en el backend’ con cosas como streamlit [3], nicegui [4], pynecone [5] o cualquiera de las novedades que están saliendo últimamente [6]. Al final no todo es tan mágico y maravilloso como venden pero puede ser una opción dependiendo de lo que pretendas hacer.

[1] https://www.djangoproject.com/
[2] Welcome to Flask — Flask Documentation (2.3.x)
[3] https://streamlit.io/
[4] https://nicegui.io/
[5] https://pynecone.io/
[6] https://may69.com/purepython/

Muchas gracias por tu respuesta y tus consejos.
Voy a intentar investigar sobre el framework flask a ver si puedo avanzar.
Un saludo.

Hola!

He visto que el título de esta pregunta es “Web scraping”, pero por lo que describes lo que quieres es hacer una “página web” que tenga inputs que el usuario meta, y cuando le dé a un botón o algo recibas esa información en tu aplicación de Python, o he entendido mal?

Web scraping se le suele llamar a obtener información de webs que no son tuyas. Puedes leer un poco más sobre el tema aquí, pero no es necesario para lo que creo que tienes que hacer.

Re: aplicaciones web.

Has mencionado que antes programabas en Java, has hecho alguna vez un proyecto similar en Java?

Si es así, estaría genial que pudieras contar cómo lo sueles hacer, y así te podamos ayudar mejor, e igual sugerirte los equivalentes en Python de librerías o patrones que usabas antes en Java. Al final son los mismos conceptos escritos o usados de forma distinta.