Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/bitebait/curry

πŸ› Curry Γ© um WebCrawler escrito em Golang com finalidade de verificar o valor do cΓ’mbio de DΓ³lar para Real (USDxBRL) em algumas lojas no Paraguay.
https://github.com/bitebait/curry

api brasil crawler currency-exchange-rates go golang paraguay webcrawler

Last synced: about 2 months ago
JSON representation

πŸ› Curry Γ© um WebCrawler escrito em Golang com finalidade de verificar o valor do cΓ’mbio de DΓ³lar para Real (USDxBRL) em algumas lojas no Paraguay.

Awesome Lists containing this project

README

        

#

πŸ› Curry CΓ’mbios

##

Valor do cΓ’mbio(USDxBRL) em lojas no Paraguay


## πŸŽ“ Sobre

Curry Γ© um WebCrawler escrito em Golang com finalidade de verificar o valor do cΓ’mbio de **DΓ³lar** para **Real** (**USD**x**BRL**) em algumas lojas no Paraguay.

* * *

## :tada: Features

1. :white_check_mark: Web Crawler.
1. :white_check_mark: API JSON Endpoint.
1. :white_check_mark: In-Memory Cache.
1. :white_check_mark: Scheduler.
1. :white_check_mark: SQLite Database to keep history.
1. :white_check_mark: Custom settings.
1. :white_check_mark: Easy to add new spiders.

* * *

## πŸ“Œ Uso

Para utilizar, basta seguir os passos abaixo:

### πŸ“œ Rodando

```sh
git clone https://github.com/bitebait/curry.git
cd curry/
go run .
```

Exemplo de saida do terminal:

```
β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•— β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•— β–ˆβ–ˆβ•—
β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β•šβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•”β•
β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β• β•šβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•
β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•— β•šβ–ˆβ–ˆβ•”β•
β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘
β•šβ•β•β•β•β•β• β•šβ•β•β•β•β•β• β•šβ•β• β•šβ•β•β•šβ•β• β•šβ•β• β•šβ•β•
2021/11/27 19:06:00 Running and Listening on :8000
2021/11/27 19:06:00 API Endpoint: /api
2021/11/27 19:06:01 Running crawler...
...
2021/11/27 19:06:09 FINISHED: 30 of 30 urls visited.
2021/11/27 19:06:09 CRAWLER function took 8.403559105s.
```

Agora basta acessar .
Caso tenha alterado o endpoint favor verifique o log de saida do terminal ou o arquivo config.yml.

⚠️️ **Não esqueça de configurar o arquivo *config.yml* conforme as suas necessidades!** ⚠️


*API Json Result:*

```json
{
"id": 1,
"createdAt": "2021-11-27T15:21:06.343499301-03:00",
"items": [
{
"id": 1,
"name": "example_store1",
"currency": "BRL",
"value": "5.7",
"url": "https://www.example_store1.com/"
},
{
"id": 2,
"name": "example_store2",
"currency": "BRL",
"value": "5.72",
"url": "https://www.example_store2.com/"
}
]
}
```

*config.yml:*

```yaml
api:
port: 8000 # api listen port
endpoint: /api # api endpoint

db:
file_name: database.db # sqlite file name

cache:
max_age: 12 # Refresh cache every 12 hours

currency:
currency: BRL # Don't change
```

**πŸ•·οΈ Para mais informaçáes sobre spiders disponΓ­veis e como adicionar uma nova spider, de uma olhada em
[/spiders](https://github.com/bitebait/curry/tree/master/crawler/spiders) e [func NewSpider()](https://github.com/bitebait/curry/blob/master/crawler/spiders/spiders.go)**.

* * *

## βœ… **Lista de lojas monitoradas**


1. **[alboradainfo](https://www.alboradainfo.com/)**
1. **[aromastore](https://www.aromastore.com.br/)**
1. **[atacadocollections](https://www.atacadocollections.com/)**
1. **[atacadogames](https://www.atacadogames.com/)**
1. **[audiumelectronics](https://www.audiumelectronics.com/home)**
1. **[bonanzacambios](https://bonanzacambios.com.py/)**
1. **[cambioschaco](https://www.cambioschaco.com.py/pt-br/)**
1. **[casaamericana](https://www.casaamericana.com.py/)**
1. **[cellshop](https://www.cellshop.com/br/)**
1. **[comprasparaguai](https://www.comprasparaguai.com.br/)**
1. **[dolarpy](https://www.dolarpy.com.br/)**
1. **[gabahobby](https://www.gabahobby.com/)**
1. **[hbgames](http://www.hbgamespy.com/)**
1. **[icompy](http://icompy.com/)**
1. **[infinitysport](https://www.infinitysport.com.py/)**
1. **[lgimportados](https://www.lgimportados.com/)**
1. **[madridcenter](https://www.madridcenter.com/)**
1. **[megaeletro](https://www.megaeletro.com.py/br)**
1. **[megaeletronicos](https://www.megaeletronicos.com/br)**
1. **[mercosurcambios](https://site.mercosurcambios.com/)**
1. **[mundodocelular](https://www.mundodocelular.com/)**
1. **[oneclick](https://oneclick.com.py/)**
1. **[pioneerinter](https://www.pioneerinter.com/)**
1. **[probook](https://www.probook.com.py/)**
1. **[shoppingcentropioneer](https://shoppingcentropioneer.com/)**
1. **[tcheloco](https://www.tcheloco.com.py/br/)**
1. **[tecombras](https://www.tecombras.net/)**
1. **[topdek](https://www.topdek.com.br/br)**
1. **[victoriastore](https://www.victoriastore.com.br/)**
1. **[visaovip](http://www.visaovip.com/)**


### πŸ“„ Exoneração de responsabilidade e problemas conhecidos

* Qualquer uso do script Γ© de responsabilidade apenas do usuΓ‘rio. Os usuΓ‘rios do script devem agir de acordo com os
termos dos sites acessados.
* Como acontece com todos os sites, a estrutura do site pode mudar no futuro e, portanto, como costuma acontecer com
scripts de scraping, descontinue-o. NΓ£o Γ© realmente uma questΓ£o de saber se o cΓ³digo-fonte do site irΓ‘ mudar, mas sim
quando (entΓ£o aproveite enquanto ainda estΓ‘ funcionando)


### πŸ”’ LicenΓ§a

Todo o conteΓΊdo apresentado nos sites pertence aos criadores originais.

A licença abaixo se refere apenas ao script e não ao conteúdo scrapado.

[Licença - MIT](https://github.com/bitebait/curry/blob/master/LICENSE)


### πŸ”₯ Sinta-se Γ  vontade para contribuir com o cΓ³digo (; πŸ”₯