paress2


Nameparess2 JSON
Version 0.1.7 PyPI version JSON
download
home_pagehttps://github.com/jairomelo/paress2
SummaryParess2 is a Python package for downloading images from the Pares2 website.
upload_time2023-07-13 21:30:58
maintainer
docs_urlNone
authorJairo Antonio Melo
requires_python
licenseGNU General Public License v3.0
keywords python paress paress2 pares2.0 archivos históricos historical files historical documents historical images historical photos historical pictures
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            [![PyPI](https://img.shields.io/pypi/v/paress2)](https://pypi.org/project/paress2/)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/paress2)](https://pypi.org/project/paress2/)
[![PyPI - Downloads](https://img.shields.io/pypi/dm/paress2)](https://pypi.org/project/paress2/)
[![GitHub](https://img.shields.io/github/license/jairomelo/paress2)](https://github.com/jairomelo/paress2/blob/main/LICENSE)
[![GitHub last commit](https://img.shields.io/github/last-commit/jairomelo/paress2)]()

# PARESS2 :: Descargador automatizado de archivos del Portal de Archivos Españoles PARES2.0

Esta librería permite realizar descargas automatizadas de archivos del Portal de Archivos Españoles PARES2.0. Debido a que el portal no cuenta con una API, se ha desarrollado esta librería para realizar un Web Scrapping de la página web del portal.

<hr>

🆕 Una interfaz gráfica βeta para este módulo está disponible en [GUI-archivos-hispanoamericanos](https://github.com/jairomelo/GUI-archivos-hispanoamericanos/releases/tag/v0.1.0-beta). Por lo pronto solamente está disponible para Windows 10 y 11.

Descargar app para Windows: [![Download](https://img.shields.io/badge/Download-0.1.0--beta-blue)](https://github.com/jairomelo/GUI-archivos-hispanoamericanos/releases/download/v0.1.0-beta/gui_archivos.exe)

<hr>

Esta librería se encuentra en activo desarrollo, por lo que es posible que algún error ya haya sido resuelto en la versión más reciente. Antes de ejecutar el script, se recomienda actualizar la librería a la última versión disponible.

## Requisitos

Este programa ha sido probado y configurado para funcionar con Google Chrome a través de la librería [webdriver-manager](https://pypi.org/project/webdriver-manager/). Para su correcto funcionamiento es necesario tener instalado Google Chrome en el equipo. En caso de no tenerlo instalado, se puede descargar desde [aquí](https://www.google.com/intl/es/chrome/).

Se planea en una actualización posterior incluir soporte para Firefox y Chromium con el propósito de facilitar su uso en distribuciones Linux.

## Instalación

Este módulo está disponible en [PyPI](https://pypi.org/project/pypares2/). Para instalarlo, se debe ejecutar el siguiente comando:

```bash
pip install paress2
```

## Uso

En esta versión, solamente está disponible la opción de guardar imágenes de un legajo. En próximas versiones se incluirán más opciones.

Este módulo está diseñado para ser usado en un script de Python, por lo que no se incluye una interfaz gráfica. Para su uso, se debe importar el módulo y crear una instancia de la clase `Paress`:

```python
from paress2 import Paress
```

El objeto `Paress` se inicializa con mínimo un parámetro, que es el enlace al legajo que se quiera descargar. Por ejemplo:

```python
Paress("http://pares.mcu.es/ParesBusquedas20/catalogo/show/7255960?nm")
```

También existen tres parámetros opcionales:

- `destino`: Ruta de destino donde se guardarán los archivos. Por defecto, se guardan en un subdirectorio construido a partir del numero de catálogo del legajo (ej: 7255960). Si la ruta no es absoluta (ej: "C:\Users\usuario\descargas\images"), se guardará en el directorio donde se ejecute el script. Si la ruta no existe, se creará.
- `headless`: Si es `True`, se ejecutará el navegador en modo headless. Por defecto, es `False`. En este modo no es posible descargar imágenes, así que se debe entender como un modo de pruebas.
- `velocidad`: Tiempo en segundos (acepta valores decimales, p. ej: 0.5) que se espera entre cada proceso. El valor predeterminado es `10`, lo cual es aceptable para una cantidad de imágenes moderada (menor a 50 imágenes). Puede modificar este valor si se desea que el proceso sea más rápido o más lento. No obstante, tenga en cuenta que si el valor es muy bajo, se pueden presentar errores de conexión e incluso repetición en la descarga de imágenes.

Una vez creado el objeto, se debe llamar al método `descargar_imagenes()` para iniciar la descarga de las imágenes. Este método no recibe parámetros.

```python
Paress("http://pares.mcu.es/ParesBusquedas20/catalogo/show/7255960?nm", destino="C:\Users\usuario\descargas\images", velocidad=1).descargar_imagenes()
```

A menos que esté en modo headless, se abrirá una ventana de Google Chrome y se iniciará la descarga de las imágenes. El proceso puede tardar varios minutos, dependiendo de la velocidad de conexión a Internet y de la cantidad de imágenes que tenga el legajo.

## Bugs

Si encuentra algún error, por favor, cree un [issue](https://github.com/jairomelo/paress2/issues/new?title=Error&body=descripci%C3%B3n+del+error) en el repositorio de GitHub. Para facilitar la identificación del error incluya el mensaje de error completo que se muestra en la consola, así como el sistema operativo, el navegador instalado (Chrome o Firefox) y la versión de Python que está usando. También puede compartir el número de catálogo del legajo que está intentando descargar.

## Licencia

[GNU General Public License v3.0](https://www.gnu.org/licenses/gpl-3.0.html)

## Contribuciones

Las contribuciones son bienvenidas. Para solicitar cambios o reportar errores, por favor, cree un [issue](https://github.com/jairomelo/paress2/issues/new) en el repositorio de GitHub. Para reportar errores por favor compartir el número de catálogo del legajo y el mensaje de error que se muestra en la consola.

Si desea contribuir con el código, por favor, cree un pull request y se revisará o aceptará lo antes posible.

## TODO

- [ ] Añadir un registro del legajo descargado para identificar el documento.
- [X] Incluir soporte para Firefox
- [ ] Incluir opción para descargar el archivo como PDF
- [X] Construir una interfaz gráfica para facilitar su uso (parcial)
- [ ] Añadir la opción de descargar metadatos y conjuntos de búsquedas (por ejemplo, para descargar una lista de mapas)

## Control de cambios

El registro de cambios se encuentra en el archivo [CHANGELOG.md](CHANGELOG.md)

## Patrocinio

Este proyecto ha sido elaborado de manera independiente por el autor. Si desea apoyar el desarrollo de este y otros proyectos, puede considerar patrocinarme a través de [GitHub Sponsors](https://github.com/sponsors/jairomelo)

<a href="https://github.com/sponsors/jairomelo" target="_blank"><img src="https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub&link=%3Curl%3E&color=f88379"></a>

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/jairomelo/paress2",
    "name": "paress2",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "python,paress,paress2,pares2.0,archivos hist\u00f3ricos,historical files,historical documents,historical images,historical photos,historical pictures",
    "author": "Jairo Antonio Melo",
    "author_email": "jairoantoniomelo@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/91/f8/cd40d9ee4cf188b3b02b0aecc87a2054f87e1c1369eace0540f848ba3b01/paress2-0.1.7.tar.gz",
    "platform": null,
    "description": "[![PyPI](https://img.shields.io/pypi/v/paress2)](https://pypi.org/project/paress2/)\r\n[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/paress2)](https://pypi.org/project/paress2/)\r\n[![PyPI - Downloads](https://img.shields.io/pypi/dm/paress2)](https://pypi.org/project/paress2/)\r\n[![GitHub](https://img.shields.io/github/license/jairomelo/paress2)](https://github.com/jairomelo/paress2/blob/main/LICENSE)\r\n[![GitHub last commit](https://img.shields.io/github/last-commit/jairomelo/paress2)]()\r\n\r\n# PARESS2 :: Descargador automatizado de archivos del Portal de Archivos Espa\u00f1oles PARES2.0\r\n\r\nEsta librer\u00eda permite realizar descargas automatizadas de archivos del Portal de Archivos Espa\u00f1oles PARES2.0. Debido a que el portal no cuenta con una API, se ha desarrollado esta librer\u00eda para realizar un Web Scrapping de la p\u00e1gina web del portal.\r\n\r\n<hr>\r\n\r\n\ud83c\udd95 Una interfaz gr\u00e1fica \u03b2eta para este m\u00f3dulo est\u00e1 disponible en [GUI-archivos-hispanoamericanos](https://github.com/jairomelo/GUI-archivos-hispanoamericanos/releases/tag/v0.1.0-beta). Por lo pronto solamente est\u00e1 disponible para Windows 10 y 11.\r\n\r\nDescargar app para Windows: [![Download](https://img.shields.io/badge/Download-0.1.0--beta-blue)](https://github.com/jairomelo/GUI-archivos-hispanoamericanos/releases/download/v0.1.0-beta/gui_archivos.exe)\r\n\r\n<hr>\r\n\r\nEsta librer\u00eda se encuentra en activo desarrollo, por lo que es posible que alg\u00fan error ya haya sido resuelto en la versi\u00f3n m\u00e1s reciente. Antes de ejecutar el script, se recomienda actualizar la librer\u00eda a la \u00faltima versi\u00f3n disponible.\r\n\r\n## Requisitos\r\n\r\nEste programa ha sido probado y configurado para funcionar con Google Chrome a trav\u00e9s de la librer\u00eda [webdriver-manager](https://pypi.org/project/webdriver-manager/). Para su correcto funcionamiento es necesario tener instalado Google Chrome en el equipo. En caso de no tenerlo instalado, se puede descargar desde [aqu\u00ed](https://www.google.com/intl/es/chrome/).\r\n\r\nSe planea en una actualizaci\u00f3n posterior incluir soporte para Firefox y Chromium con el prop\u00f3sito de facilitar su uso en distribuciones Linux.\r\n\r\n## Instalaci\u00f3n\r\n\r\nEste m\u00f3dulo est\u00e1 disponible en [PyPI](https://pypi.org/project/pypares2/). Para instalarlo, se debe ejecutar el siguiente comando:\r\n\r\n```bash\r\npip install paress2\r\n```\r\n\r\n## Uso\r\n\r\nEn esta versi\u00f3n, solamente est\u00e1 disponible la opci\u00f3n de guardar im\u00e1genes de un legajo. En pr\u00f3ximas versiones se incluir\u00e1n m\u00e1s opciones.\r\n\r\nEste m\u00f3dulo est\u00e1 dise\u00f1ado para ser usado en un script de Python, por lo que no se incluye una interfaz gr\u00e1fica. Para su uso, se debe importar el m\u00f3dulo y crear una instancia de la clase `Paress`:\r\n\r\n```python\r\nfrom paress2 import Paress\r\n```\r\n\r\nEl objeto `Paress` se inicializa con m\u00ednimo un par\u00e1metro, que es el enlace al legajo que se quiera descargar. Por ejemplo:\r\n\r\n```python\r\nParess(\"http://pares.mcu.es/ParesBusquedas20/catalogo/show/7255960?nm\")\r\n```\r\n\r\nTambi\u00e9n existen tres par\u00e1metros opcionales:\r\n\r\n- `destino`: Ruta de destino donde se guardar\u00e1n los archivos. Por defecto, se guardan en un subdirectorio construido a partir del numero de cat\u00e1logo del legajo (ej: 7255960). Si la ruta no es absoluta (ej: \"C:\\Users\\usuario\\descargas\\images\"), se guardar\u00e1 en el directorio donde se ejecute el script. Si la ruta no existe, se crear\u00e1.\r\n- `headless`: Si es `True`, se ejecutar\u00e1 el navegador en modo headless. Por defecto, es `False`. En este modo no es posible descargar im\u00e1genes, as\u00ed que se debe entender como un modo de pruebas.\r\n- `velocidad`: Tiempo en segundos (acepta valores decimales, p. ej: 0.5) que se espera entre cada proceso. El valor predeterminado es `10`, lo cual es aceptable para una cantidad de im\u00e1genes moderada (menor a 50 im\u00e1genes). Puede modificar este valor si se desea que el proceso sea m\u00e1s r\u00e1pido o m\u00e1s lento. No obstante, tenga en cuenta que si el valor es muy bajo, se pueden presentar errores de conexi\u00f3n e incluso repetici\u00f3n en la descarga de im\u00e1genes.\r\n\r\nUna vez creado el objeto, se debe llamar al m\u00e9todo `descargar_imagenes()` para iniciar la descarga de las im\u00e1genes. Este m\u00e9todo no recibe par\u00e1metros.\r\n\r\n```python\r\nParess(\"http://pares.mcu.es/ParesBusquedas20/catalogo/show/7255960?nm\", destino=\"C:\\Users\\usuario\\descargas\\images\", velocidad=1).descargar_imagenes()\r\n```\r\n\r\nA menos que est\u00e9 en modo headless, se abrir\u00e1 una ventana de Google Chrome y se iniciar\u00e1 la descarga de las im\u00e1genes. El proceso puede tardar varios minutos, dependiendo de la velocidad de conexi\u00f3n a Internet y de la cantidad de im\u00e1genes que tenga el legajo.\r\n\r\n## Bugs\r\n\r\nSi encuentra alg\u00fan error, por favor, cree un [issue](https://github.com/jairomelo/paress2/issues/new?title=Error&body=descripci%C3%B3n+del+error) en el repositorio de GitHub. Para facilitar la identificaci\u00f3n del error incluya el mensaje de error completo que se muestra en la consola, as\u00ed como el sistema operativo, el navegador instalado (Chrome o Firefox) y la versi\u00f3n de Python que est\u00e1 usando. Tambi\u00e9n puede compartir el n\u00famero de cat\u00e1logo del legajo que est\u00e1 intentando descargar.\r\n\r\n## Licencia\r\n\r\n[GNU General Public License v3.0](https://www.gnu.org/licenses/gpl-3.0.html)\r\n\r\n## Contribuciones\r\n\r\nLas contribuciones son bienvenidas. Para solicitar cambios o reportar errores, por favor, cree un [issue](https://github.com/jairomelo/paress2/issues/new) en el repositorio de GitHub. Para reportar errores por favor compartir el n\u00famero de cat\u00e1logo del legajo y el mensaje de error que se muestra en la consola.\r\n\r\nSi desea contribuir con el c\u00f3digo, por favor, cree un pull request y se revisar\u00e1 o aceptar\u00e1 lo antes posible.\r\n\r\n## TODO\r\n\r\n- [ ] A\u00f1adir un registro del legajo descargado para identificar el documento.\r\n- [X] Incluir soporte para Firefox\r\n- [ ] Incluir opci\u00f3n para descargar el archivo como PDF\r\n- [X] Construir una interfaz gr\u00e1fica para facilitar su uso (parcial)\r\n- [ ] A\u00f1adir la opci\u00f3n de descargar metadatos y conjuntos de b\u00fasquedas (por ejemplo, para descargar una lista de mapas)\r\n\r\n## Control de cambios\r\n\r\nEl registro de cambios se encuentra en el archivo [CHANGELOG.md](CHANGELOG.md)\r\n\r\n## Patrocinio\r\n\r\nEste proyecto ha sido elaborado de manera independiente por el autor. Si desea apoyar el desarrollo de este y otros proyectos, puede considerar patrocinarme a trav\u00e9s de [GitHub Sponsors](https://github.com/sponsors/jairomelo)\r\n\r\n<a href=\"https://github.com/sponsors/jairomelo\" target=\"_blank\"><img src=\"https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub&link=%3Curl%3E&color=f88379\"></a>\r\n",
    "bugtrack_url": null,
    "license": "GNU General Public License v3.0",
    "summary": "Paress2 is a Python package for downloading images from the Pares2 website.",
    "version": "0.1.7",
    "project_urls": {
        "Homepage": "https://github.com/jairomelo/paress2"
    },
    "split_keywords": [
        "python",
        "paress",
        "paress2",
        "pares2.0",
        "archivos hist\u00f3ricos",
        "historical files",
        "historical documents",
        "historical images",
        "historical photos",
        "historical pictures"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7296ffe9cfa8b4f5a2218312fe2213de1e1d95e8fed1a53ea193c324bcab44bf",
                "md5": "5c3d76564a8efd68b8eee57fcb767482",
                "sha256": "1852ea76ec422a999148c0069a9dd0981e57ea0f43d79efc66f08a916adacde6"
            },
            "downloads": -1,
            "filename": "paress2-0.1.7-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "5c3d76564a8efd68b8eee57fcb767482",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 21547,
            "upload_time": "2023-07-13T21:30:57",
            "upload_time_iso_8601": "2023-07-13T21:30:57.073059Z",
            "url": "https://files.pythonhosted.org/packages/72/96/ffe9cfa8b4f5a2218312fe2213de1e1d95e8fed1a53ea193c324bcab44bf/paress2-0.1.7-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "91f8cd40d9ee4cf188b3b02b0aecc87a2054f87e1c1369eace0540f848ba3b01",
                "md5": "62e7ac443a22c7bf94681dae6967cca6",
                "sha256": "64bd7112fa79f0df18659cc162b030efc01491e5a8dd498cd5cda5a439f196d8"
            },
            "downloads": -1,
            "filename": "paress2-0.1.7.tar.gz",
            "has_sig": false,
            "md5_digest": "62e7ac443a22c7bf94681dae6967cca6",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 23044,
            "upload_time": "2023-07-13T21:30:58",
            "upload_time_iso_8601": "2023-07-13T21:30:58.877316Z",
            "url": "https://files.pythonhosted.org/packages/91/f8/cd40d9ee4cf188b3b02b0aecc87a2054f87e1c1369eace0540f848ba3b01/paress2-0.1.7.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-07-13 21:30:58",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "jairomelo",
    "github_project": "paress2",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "paress2"
}
        
Elapsed time: 0.08926s