Estoy buscando un paquete de python de monitoreo de archivos multiplataforma? Sé que es posible monitorear archivos en Windows usando pywin32, y hay paquetes que funcionan en Linux/Unix, pero ¿alguien sabe sobre uno multiplataforma?¿Monitorea el contenido de archivos/directorios?
Respuesta
Para sistemas basados en Unix/Linux, se debe utilizar File Alteration Monitor Python bindings-libfam.
Para los sistemas basados en Windows, debe atar en la API Win32 FindFirstChangeNotification
y las funciones relacionadas.
En cuanto a una plataforma cruzada, no conozco una buena plataforma cruzada. Creo que lo mejor sería construir un módulo usted mismo que funciona en cualquiera de los sistemas operativos que utiliza uno de los 2 métodos anteriores después de detectar qué sistema operativo es.
¿Podría explicarme cómo usar la API W32 en un ejemplo ... porque no entiendo eso ... – wishi
Encontré este enlace, que habla sobre su problema. Aunque en realidad no proporciona una solución/biblioteca, creo que ayudará. http://www.stepthreeprofit.com/2008/06/cross-platform-monitoring-of-filesystem.html
No creo que haya una plataforma multiplataforma todavía, por lo que es posible que desee rodar la suya propia.
No tengo experiencia en esta área, así que no estoy muy seguro. Espero que esto ayude.
Nota
mi error, gamin está disponible en cygwin como Adán Bernier me señaló en un comentario. Es posible que desee investigar otras opciones en cygwin (si existen).
La forma más fácil en Linux es utilizar inotifywait (dado que su núcleo es lo suficientemente reciente). No necesita ningún enlace especial, inotifywait se puede personalizar para imprimir líneas de salida en salida estándar de la manera que desee. Mire y this question para un buen ejemplo.
Mencionó específicamente la plataforma cruzada.inotifywait es solo para linux –
Estoy trabajando en una biblioteca con licencia de MIT que ayuda a los programas de Python a supervisar los eventos del sistema de archivos de la manera más portátil posible. Hay diferencias que estoy tratando de resolver. Altamente versión alfa en la actualidad
Échale un vistazo aquí: http://github.com/gorakhargosh/watchdog/
parches y contribuciones son bienvenidas.
Espero que ayude. =) Saludos.
También puedes ver esta opción:
http://pypi.python.org/pypi/watchdog
¿Se usó con una aplicación multiplataforma en Windows y OS X.
Posiblemente porque el autor de watchdog publicado al respecto en una respuesta un año antes y no hay mucho en esta respuesta? Probablemente no valga la pena un voto negativo, pero tampoco vale la pena un voto a favor. – fencepost
Me gusta porque dijo que lo usó y está bien. – droope
Nunca lo entiendo porque una respuesta fue downvoted. Aquí está el uso de watchdog: http://pythonhosted.org/watchdog/quickstart.html – swdev
- 1. ¿Cómo se monitorea constantemente el archivo LogCat?
- 2. ¿Monitorea el cambio de pista de Spotify en Applescript?
- 3. ¿Monitorea el uso de la red de un proceso?
- 4. ¿Monitorea el uso de la CPU por hilo en Java?
- 5. ¿Monitorea los registros de Amazon S3 con Splunk?
- 6. fusionando el contenido de dos tablas sin duplicar el contenido
- 7. Calcular el contenido de scrollview
- 8. script de Linux que monitorea los cambios de archivos dentro de las carpetas (como Autospec hace!)
- 9. ¿Se reiniciará una aplicación de iOS que monitorea cambios de ubicación significativos en el reinicio del dispositivo?
- 10. ObservableCollection que también monitorea los cambios en los elementos de la colección
- 11. `contenido: '' 'vs' contenido: none`
- 12. Contenido de Android SMS (contenido: // sms/enviado)
- 13. Content_URI en el contenido Proveedor
- 14. cambiar el contenido del bloque
- 15. Estrangulamiento basado en el contenido
- 16. Obtenga el contenido del módulo
- 17. ¿Cómo descargo contenido del administrador de contenido?
- 18. Tomcat aseguró el contenido estático
- 19. Alinear el contenido del botón
- 20. ¿Comprime SVN el contenido binario?
- 21. No se puede obtener el contenido interno de '' porque el contenido no es literal
- 22. Si vacías el contenido (ob_flush) de una solicitud AJAX, ¿se cargará el contenido?
- 23. Cómo obtener el contenido completo de HttpWebResponse si el contenido devuelto es Transfer-Encoding: chunked?
- 24. Mostrar el contenido del portapapeles de Windows
- 25. PHP borrar el contenido de un directorio
- 26. CSS: No ajuste el contenido de div
- 27. C#: comparar el contenido de dos IEnumerables
- 28. ¿Lee el contenido de un objeto "archivo"?
- 29. cambiar el contenido de un puntero variables
- 30. Cómo actualizar el contenido de un FigureCanvasTkAgg
Tim Golden tiene una muy simple método multi-plataforma de sondeo de un directorio con os.listdir aquí: http://timgolden.me.uk/python/win32_how_do_i/watch_directory_for_changes.html – bernie
¿Qué significa "monitor"? Proporcione alguna pista sobre lo que está tratando de hacer. –