pc-zap-scrapper


Namepc-zap-scrapper JSON
Version 1.0.1 PyPI version JSON
download
home_page
SummaryUm template para começar o desenvolvimento de apps
upload_time2023-01-08 12:43:24
maintainer
docs_urlNone
author
requires_python>=3.9
licenseCopyright (c) 2023, Eduardo Morais All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
keywords template app
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Zap Scrapper - Imoveis em Poços de Caldas

Scrapper para obter dados de imóveis na cidade de Poços de Caldas, MG. O aplicativo roda o scrapper, formata os dados e faz o load numa base de dados privada do PostgreSQL.

---

## 1. Instalação
A instalação é dada através do `pip`:
```bash
$ pip install pc_zap_scrapper 
```
---

## 2. Configurando a conexão com o banco
Na etapa de load do banco de dados, é necessário fornecer as credenciais do banco de dados. Serão necessárias as informações:
* `DB_USERNAME`
* `DB_PASSWORD`
* `DB_NAME`
* `DB_HOST`
* `DB_PORT`

Esses dados podem ser passados manualmente ou através de arquivo `.env`

### 2.a Configuração manual das credenciais
Basta rodar:

```bash
$ zapscrap configure -p path/to/.env
```
e fornecer cada uma das informações requeridas.

### 2.b Configuração através do arquivo `.env`
alternativamente, pode-se definir o `.env` com as informações necessárias.
```bash
# Arquivo .env para conexão com banco de dados PostgreSQL
DB_USERNAME=nome_do_usuario
DB_PASSWORD=admin123
DB_NAME=nome_da_base
DB_HOST=esse_e_meu.host
DB_PORT=0000
```
Salve esse arquivo em qualquer lugar; por exemplo, em `path/to/.env`. Depois, rode o comando

```bash
$ zapscrap configure -p path/to/.env
```
---

## 3. Utilização

O scrapping, seguido da sanitização dos dados e carregamento no banco de dados é feito simplesmente com o comando:

```bash
# Exemplo do uso do comando 'zapscrap'
$ zapscrap
```

Após sua chamada, você deverá ver um barra de progresso indicado a evolução do processo de raspagem de dados.

É também possível executar individualmente cada etapa dessa ETL. Isso está documentado nas seções posteriores

### 3.1 Webscrapping para extração de dados

Para executar o Scrapping, basta utilizar o comando `zapscrap search`. Esse comando tem quatro argumentos básicos:

* `action` (`-a` ou `--action`): Define se você está procurando por imóveis a venda ou para aluguel. Por padrão, está configurado como "venda".
```bash
# Exemplo do uso do argumento 'action'
$ zapscrap search -a venda
```

* `estate_type` (`-t` ou `--estate_type`): Define se você vai procurar por casas, apartamentos ou ambos. Por padrão, esta configurado com o  valor "imoveis", que representa casas e apartamentos.
```bash
# Exemplo do uso do argumento 'estate_type'
$ zapscrap search -t imoveis
```

* `estate_type` (`-l` ou `--location`): Define o local onde procurar. O formato deve ser uf+nome-da-cidade. Por exemplo, para São Paulo capital de ve ficar como sp+sao-paulo.
```bash
# Exemplo do uso do argumento 'location'
$ zapscrap search -l mg+pocos-de-caldas
```

* `max_pages` (`-m` ou `--max_pages`): Define o alcance da paginação. Por exemplo, se for escolhido p valor 3 para esse parâmetro, apenas as três primeiras páginas serão retornadas. Por padrão, é atribuido a ele o valor `None` que indica ao scrapper para trazer todas as páginas.
```bash
# Exemplo do uso do argumento 'max_pages'
$ zapscrap search -m 2
```

Após o scrapping, o programa irá manter os dados na memórias da forma como foram consultados

### 3.2 Formatação dos dados

Em seguida, deve-se formatar os dados para o esquema necessário na ingestão. 

```bash
# Exemplo do uso do comando 'format-data'
$ zapscrap format-data
```

### 3.3 Ingestão no banco

Por último, já com a base sanitizado, deve-se executar a ingestão de fato:
```bash
# Exemplo do uso do comando 'db-ingest'
$ zapscrap db-ingest
```

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "pc-zap-scrapper",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": "",
    "keywords": "template,app",
    "author": "",
    "author_email": "Eduardo <emdemor415@gmail.com.br>",
    "download_url": "https://files.pythonhosted.org/packages/be/c5/015e0acd6f13a00de29845d5f1cd9df743739b90c5b0845592aba2c50e87/pc_zap_scrapper-1.0.1.tar.gz",
    "platform": null,
    "description": "# Zap Scrapper - Imoveis em Po\u00e7os de Caldas\n\nScrapper para obter dados de im\u00f3veis na cidade de Po\u00e7os de Caldas, MG. O aplicativo roda o scrapper, formata os dados e faz o load numa base de dados privada do PostgreSQL.\n\n---\n\n## 1. Instala\u00e7\u00e3o\nA instala\u00e7\u00e3o \u00e9 dada atrav\u00e9s do `pip`:\n```bash\n$ pip install pc_zap_scrapper \n```\n---\n\n## 2. Configurando a conex\u00e3o com o banco\nNa etapa de load do banco de dados, \u00e9 necess\u00e1rio fornecer as credenciais do banco de dados. Ser\u00e3o necess\u00e1rias as informa\u00e7\u00f5es:\n* `DB_USERNAME`\n* `DB_PASSWORD`\n* `DB_NAME`\n* `DB_HOST`\n* `DB_PORT`\n\nEsses dados podem ser passados manualmente ou atrav\u00e9s de arquivo `.env`\n\n### 2.a Configura\u00e7\u00e3o manual das credenciais\nBasta rodar:\n\n```bash\n$ zapscrap configure -p path/to/.env\n```\ne fornecer cada uma das informa\u00e7\u00f5es requeridas.\n\n### 2.b Configura\u00e7\u00e3o atrav\u00e9s do arquivo `.env`\nalternativamente, pode-se definir o `.env` com as informa\u00e7\u00f5es necess\u00e1rias.\n```bash\n# Arquivo .env para conex\u00e3o com banco de dados PostgreSQL\nDB_USERNAME=nome_do_usuario\nDB_PASSWORD=admin123\nDB_NAME=nome_da_base\nDB_HOST=esse_e_meu.host\nDB_PORT=0000\n```\nSalve esse arquivo em qualquer lugar; por exemplo, em `path/to/.env`. Depois, rode o comando\n\n```bash\n$ zapscrap configure -p path/to/.env\n```\n---\n\n## 3. Utiliza\u00e7\u00e3o\n\nO scrapping, seguido da sanitiza\u00e7\u00e3o dos dados e carregamento no banco de dados \u00e9 feito simplesmente com o comando:\n\n```bash\n# Exemplo do uso do comando 'zapscrap'\n$ zapscrap\n```\n\nAp\u00f3s sua chamada, voc\u00ea dever\u00e1 ver um barra de progresso indicado a evolu\u00e7\u00e3o do processo de raspagem de dados.\n\n\u00c9 tamb\u00e9m poss\u00edvel executar individualmente cada etapa dessa ETL. Isso est\u00e1 documentado nas se\u00e7\u00f5es posteriores\n\n### 3.1 Webscrapping para extra\u00e7\u00e3o de dados\n\nPara executar o Scrapping, basta utilizar o comando `zapscrap search`. Esse comando tem quatro argumentos b\u00e1sicos:\n\n* `action` (`-a` ou `--action`): Define se voc\u00ea est\u00e1 procurando por im\u00f3veis a venda ou para aluguel. Por padr\u00e3o, est\u00e1 configurado como \"venda\".\n```bash\n# Exemplo do uso do argumento 'action'\n$ zapscrap search -a venda\n```\n\n* `estate_type` (`-t` ou `--estate_type`): Define se voc\u00ea vai procurar por casas, apartamentos ou ambos. Por padr\u00e3o, esta configurado com o  valor \"imoveis\", que representa casas e apartamentos.\n```bash\n# Exemplo do uso do argumento 'estate_type'\n$ zapscrap search -t imoveis\n```\n\n* `estate_type` (`-l` ou `--location`): Define o local onde procurar. O formato deve ser uf+nome-da-cidade. Por exemplo, para S\u00e3o Paulo capital de ve ficar como sp+sao-paulo.\n```bash\n# Exemplo do uso do argumento 'location'\n$ zapscrap search -l mg+pocos-de-caldas\n```\n\n* `max_pages` (`-m` ou `--max_pages`): Define o alcance da pagina\u00e7\u00e3o. Por exemplo, se for escolhido p valor 3 para esse par\u00e2metro, apenas as tr\u00eas primeiras p\u00e1ginas ser\u00e3o retornadas. Por padr\u00e3o, \u00e9 atribuido a ele o valor `None` que indica ao scrapper para trazer todas as p\u00e1ginas.\n```bash\n# Exemplo do uso do argumento 'max_pages'\n$ zapscrap search -m 2\n```\n\nAp\u00f3s o scrapping, o programa ir\u00e1 manter os dados na mem\u00f3rias da forma como foram consultados\n\n### 3.2 Formata\u00e7\u00e3o dos dados\n\nEm seguida, deve-se formatar os dados para o esquema necess\u00e1rio na ingest\u00e3o. \n\n```bash\n# Exemplo do uso do comando 'format-data'\n$ zapscrap format-data\n```\n\n### 3.3 Ingest\u00e3o no banco\n\nPor \u00faltimo, j\u00e1 com a base sanitizado, deve-se executar a ingest\u00e3o de fato:\n```bash\n# Exemplo do uso do comando 'db-ingest'\n$ zapscrap db-ingest\n```\n",
    "bugtrack_url": null,
    "license": "Copyright (c) 2023, Eduardo Morais  All rights reserved.  Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:  Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ",
    "summary": "Um template para come\u00e7ar o desenvolvimento de apps",
    "version": "1.0.1",
    "split_keywords": [
        "template",
        "app"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0b53e1c7529c2e803a9bebf0cde08bf937fe4caf6a29595915fcb5f22b89353e",
                "md5": "3cb4aa1ca964f0c9655ba8876a19f9f8",
                "sha256": "aac32b9ceee74c5bc4ca7ea1b6ab1c3dcab3c436d4d3d572d346606cbd68e4b8"
            },
            "downloads": -1,
            "filename": "pc_zap_scrapper-1.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "3cb4aa1ca964f0c9655ba8876a19f9f8",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 18470,
            "upload_time": "2023-01-08T12:43:21",
            "upload_time_iso_8601": "2023-01-08T12:43:21.190331Z",
            "url": "https://files.pythonhosted.org/packages/0b/53/e1c7529c2e803a9bebf0cde08bf937fe4caf6a29595915fcb5f22b89353e/pc_zap_scrapper-1.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "bec5015e0acd6f13a00de29845d5f1cd9df743739b90c5b0845592aba2c50e87",
                "md5": "59efc05ad9addc3a52475fd441bb1a3d",
                "sha256": "ffda4ca31e39e762761dc12d71a9412043cbaff05d372d9dba4a734dd2d96102"
            },
            "downloads": -1,
            "filename": "pc_zap_scrapper-1.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "59efc05ad9addc3a52475fd441bb1a3d",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 18525,
            "upload_time": "2023-01-08T12:43:24",
            "upload_time_iso_8601": "2023-01-08T12:43:24.440316Z",
            "url": "https://files.pythonhosted.org/packages/be/c5/015e0acd6f13a00de29845d5f1cd9df743739b90c5b0845592aba2c50e87/pc_zap_scrapper-1.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-01-08 12:43:24",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "lcname": "pc-zap-scrapper"
}
        
Elapsed time: 0.17020s