Wrapper Python para a API Brave Search.
O Brave Search não rastreia você ou suas consultas, é uma alternativa de preservação de privacidade à Pesquisa Google. Ele oferece muitos endpoints para os desenvolvedores desenvolverem. Este módulo é um wrapper para a API Brave Search.
Este repositório está em desenvolvimento ativo, a funcionalidade pode mudar. Se você tiver alguma sugestão ou solicitação, abra um problema.
Para começar, instale o pacote usando pip:
pip install brave-search
O módulo oferece suporte a solicitações síncronas e assíncronas. Sua chave de API Brave pode ser passada como uma variável de ambiente em BRAVE_API_KEY
ou como um argumento para a classe Brave.
from brave import Brave
brave = Brave ()
query = "cobalt mining"
num_results = 10
search_results = brave . search ( q = query , count = num_results )
O objeto search_results
incluirá todos os dados retornados pela API Brave Search. Você pode acessar os resultados Web
, News
e Video
a partir do endpoint de pesquisa na Web da seguinte maneira:
web_results = search_results . web_results
news_results = search_results . news_results
video_results = search_results . video_results
O módulo também oferece suporte a solicitações assíncronas:
from brave import AsyncBrave
brave = AsyncBrave ()
query = "cobalt mining"
num_results = 10
search_results = await brave . search ( q = query , count = num_results )
Para retornar a resposta JSON bruta que não foi validada por meio do modelo pydantic, use o sinalizador raw
:
from brave import Brave
query = "George Orwell, 1984"
num_results = 10
search_results = brave . search ( q = query , raw = True )
Use o método download_pdfs
para baixar todos os PDFs encontrados nos resultados da pesquisa. Este método retorna uma lista de caminhos de arquivos para os PDFs baixados. Você pode usar o Goggles para aumentar os PDFs nos resultados da sua pesquisa.
from brave import Brave
brave = Brave ()
query = "cobalt mining"
num_results = 10
search_results = brave . search ( q = query , count = num_results )
search_results . download_pdfs ()
Use o método product_prices
para obter uma lista de preços para um conjunto de resultados de pesquisa. Este método retorna uma lista de preços encontrados nos resultados da pesquisa. Se nenhum preço for encontrado, uma lista vazia será retornada. Este método atualmente não oferece suporte à conversão de moedas.
from brave import Brave
brave = Brave ()
query = "Blue Tack"
num_results = 10
country = "US"
search_results = brave . search ( q = query , count = num_results , country = country )
print ( search_results . product_prices ())
# >> [6.28, 5.98, 4.99, 13.18, 6.59, 7.8, 5.56, 10.79, 5.02, 10.56, 16.95, 9.99, 23.59, 16.31, 11.96]
print ( search_results . product_price_ranges ())
# >> (4.99, 23.59)
Use o método average_product_review_score
para obter a pontuação média da revisão para um conjunto de resultados de pesquisa. Este método converte todas as pontuações da revisão em uma escala de 100 pontos.
from brave import Brave
brave = Brave ()
query = "Blue Tack"
num_results = 10
search_results = brave . search ( q = query , count = num_results )
print ( search_results . average_product_review_score ())
# >> 88.13333333333333
Brave é um poderoso mecanismo de pesquisa que permite o uso de goggles
para reclassificar os resultados da pesquisa de acordo com seu caso de uso. Os Goggles permitem que qualquer indivíduo – ou comunidade de pessoas – altere a classificação do Brave Search usando um conjunto de instruções (regras e filtros). Qualquer pessoa pode criar, aplicar ou estender um Goggle. Essencialmente, o Goggles atua como uma reclassificação personalizada no topo do índice de pesquisa do Brave.
Aqui usamos um óculos que prioriza fontes acadêmicas e arquivísticas.
from brave import Brave
query = "cobalt mining"
goggle_url = "https://raw.githubusercontent.com/CSamuelAnderson/Brave-goggles/main/academic-and-archival.goggle"
num_results = 10
result_filter = "web" # must be comma separated string
search_results = brave . search ( q = query , goggles_id = goggle_url , count = num_results , result_filter = result_filter )
Você também pode usar o Goggles que contribuiu diretamente para este pacote:
from brave import Brave
from brave . goggles import thought_leadership
query = "cobalt mining"
num_results = 10
search_results = brave . search ( q = query , goggles_id = thought_leadership , count = num_results )
Este pacote usa Poesia para gerenciamento de dependências. Para começar a desenvolver aqui, você precisa instalar o Poetry
Depois de instalar o Poetry em seu sistema, basta executar:
make init
Verifique o CONTRIBUTING.md para obter informações sobre como desenvolver este projeto.