Despeje facilmente receitas de Cookidoo no site oficial
Este programa permite que você despeja todas as receitas em sites Cookidoo (disponíveis para diferentes países) para leitura offline e posticipada. Essas receitas são válidas em particular para dispositivos Thermomix/BIMBY. Para despejar as receitas, é necessária uma assinatura válida.
O conceito inicial desse programa foi baseado em Jakubszalaty/Cookidoo-Parser.
Se você pretende investigar ou estender cientificamente o Cookidump, considere citar o artigo a seguir.
@article{cambiaso2022cookidump,
title = {Web security and data dumping: The Cookidump case},
journal = {Software Impacts},
volume = {14},
pages = {100426},
year = {2022},
issn = {2665-9638},
doi = {https://doi.org/10.1016/j.simpa.2022.100426},
url = {https://www.sciencedirect.com/science/article/pii/S2665963822001105},
author = {Enrico Cambiaso and Maurizio Aiello},
keywords = {Cyber-security, Data dump, Database security, Browser automation},
abstract = {In the web security field, data dumping activities are often related to a malicious exploitation. In this paper, we focus on data dumping activities executed legitimately by scraping/storing data shown on the browser. We evaluate such operation by proposing Cookidump, a tool able to dump all recipes available on the Cookidoo© website portal. While such scenario is not relevant, in terms of security and privacy, we discuss the impact of such kind of activity for other scenarios including web applications hosting sensitive information.}
}
Informações adicionais podem ser encontradas em https://www.sciencedirect.com/science/article/pii/s2665963822001105.
nix run github:auino/cookidump -- <outputdir> [--separate-json]
O Nix Disposition google-chrome
juntamente com chromedriver
. Somente os argumentos <outputdir>
e [--separate-json]
são esperados.
git clone https://github.com/auino/cookidump.git
cd
na pasta de download
Instale os requisitos do Python:
pip install -r requirements.txt
Instale o navegador do Google Chrome, se ainda não estiver instalado
Baixe o Chrome Webdriver e salve -o na pasta cookidump
Você está pronto para despejar suas receitas
Basta executar o comando a seguir para iniciar o programa. O programa é interativo para simplificar seu uso.
python cookidump.py [--separate-json] <webdriverfile> <outputdir>
onde:
webdriverfile
identifica o caminho para o Chrome WebDriver baixado (por exemplo, chromedriver.exe
for Windows Hosts, ./chromedriver
para hosts Linux e MacOS)outputdir
identifica o caminho do diretório de saída (será criado, se ainda não estiver existente)--separate-json
permite gerar um arquivo JSON separado para cada receita, em vez de um arquivo agregado, incluindo todas as receitasO programa abrirá uma janela do Google Chrome e esperará até que você esteja conectado à sua conta Cookidoo (diferentes países são suportados).
Depois disso, siga as intruções fornecidas pelo próprio script para prosseguir com o despejo.
Seguindo as instruções de script, também é possível aplicar filtros personalizados para exportar receitas selecionadas (por exemplo, na base do prato, título e ingredientes, versão thermomix/bimby etc.).
A saída é representada por um arquivo index.html
, incluído no outputdir
, além de um conjunto de receitas dentro das pastas estruturadas. Ao abrir o arquivo Gerado index.html
no seu navegador, é possível ter uma lista de receitas baixadas e surfar na receita desejada.
O número de receitas exportadas é limitado a cerca de 1000
para cada execução. Portanto, o uso de filtros pode ajudar neste caso a reduzir o número de receitas exportadas.
Uma abordagem diferente, adotada anteriormente, é baseada na recuperação de dados estruturados em receitas. Mais informações podem ser encontradas na filial de dados. A saída é representada neste caso em um formato diferente (estruturado), portanto, deve ser interpretado. Essa interpretação não é implementada no comprometimento anterior vinculado.
Os autores deste programa não são responsáveis pelo uso dele. Este programa é lançado apenas para fins de pesquisa e disseminação. Além disso, o programa oferece aos usuários a capacidade de armazenar receitas local e temporariamente acessíveis por meio de uma assinatura legítima. Antes de usar este programa, verifique os termos de serviço da assinatura Cookidoo, de acordo com o país relacionado à assinatura explorada. O compartilhamento das receitas obtidas não é uma atividade legítima e os autores deste programa não são responsáveis por nenhuma atividade do ILCELECIT e compartilhamento realizada pelos usuários.
Você pode me encontrar no Twitter como @auino.