Scraper de Empresas do BBB

O diretório,
como planilha.

Digite um ramo - ou cole uma URL de categoria ou de busca do BBB - e as empresas voltam como linhas: o nome, a nota em letra do BBB, se são credenciadas, suas categorias, endereço, telefone, e-mail, site e há quanto tempo atuam.

500 linhas grátis, uma única vezdepois 0,002 $ por linhauma linha por empresaCSV · JSON · Excel
Como funciona

Três jeitos de perguntar,
um campo.

Aqui não há controle de ordenação. O que molda a execução é o que você digita e quanto disso você quer.

  1. PASSO 1Faça login na plataforma.
  2. PASSO 2Abra o Scraper de Empresas do BBB.
  3. PASSO 3Digite um termo de busca simples como auto sellers, uma URL de categoria como bbb.org/us/category/…, ou uma URL completa bbb.org/search?… com os filtros de localização que quiser - um por linha, misturados livremente.
  4. PASSO 4Ou envie um arquivo CSV, XLSX, TXT ou Parquet com o mesmo.
  5. PASSO 5Defina um limite por consulta, se quiser um. Ele aceita um mínimo de 1, e deixá-lo vazio busca tudo - não há valor padrão.
  6. PASSO 6Clique em Start scraping e baixe como CSV, JSON ou Excel.

Montar a busca antes no bbb.org é o jeito fácil de fixar um local: os filtros que você põe lá viajam com a URL.

Por que é útil

Uma nota, uma categoria
e um jeito de contatar.

Três coisas que esta exportação traz e que um diretório de empresas genérico normalmente não tem.

A nota do próprio BBB, e o credenciamento

rating é a nota em letra que o BBB atribui - um texto como A+, não uma pontuação em estrelas - e accredited diz se a empresa paga para ser credenciada. Juntas são um filtro que você não consegue montar a partir de uma ficha de mapa: uma lista curta de empresas com nota e credenciadas dentro de um ramo.

Categorias em dois níveis

category é o ramo principal e all_categories é a lista completa separada por vírgulas, que normalmente tem várias. Uma empresa de telhados que também lista janelas e revestimento mostra as duas - então dá para buscar estreito e ainda ver tudo o mais que ela diz fazer.

Dados de contato, onde publicados

Telefone, site, endereço e muitas vezes um e-mail chegam como colunas separadas, ao lado de years_in_business e de um contato com nome. Nem toda empresa publica tudo - veja a nota abaixo sobre como esta exportação lida com isso, porque ela não faz o que você esperaria.

Leia isto primeiro

Esta exportação omite chaves
em vez de esvaziá-las.

É a única coisa genuinamente surpreendente deste serviço, e vai quebrar código ingênuo. Dois minutos aqui poupam uma tarde.

Quando uma empresa não publica um campo, a coluna não fica em branco - ela está ausente daquela linha por completo. Ao longo das linhas que lemos havia dezenas de conjuntos de chaves diferentes dentro de um mesmo arquivo. Só um punhado de colunas apareceu em todas: a consulta, a URL do perfil, o nome, a categoria principal, o telefone, a cidade, o estado e o CEP, e se a empresa é credenciada. Todo o resto vai e vem conforme o que aquela empresa escolheu publicar.

Num download CSV ou Excel isso é invisível - as colunas se alinham e as lacunas são células vazias. Para a exportação JSON, importa muito. Código que lê row.website esperando um texto vai receber undefined em vez de string vazia, e qualquer coisa que suponha um formato uniforme entre as linhas vai quebrar na primeira empresa que guardar o e-mail para si. Leia defensivamente, ou pegue o formato de planilha e deixe que ele normalize por você.

Duas das colunas declaradas não apareceram em absolutamente nada do que rodamos - licenses e social_media. Elas fazem parte da lista de colunas declarada pelo serviço, então podem se preencher para empresas ou categorias que não tocamos, mas nunca vimos um valor em nenhuma das duas e por isso não têm entrada na tabela abaixo. É por isso que ela lista trinta e não trinta e duas.

Uma coluna chega deliberadamente deformada. additional_emails carrega a ofuscação antiscraping do próprio BBB - um endereço aparece como algo do tipo …finance__at__troysellersauto__dot__com… envolto em marcadores. Toda linha que tem o campo é assim, e a coluna email simples nunca é. Desfazer isso é mecânico, mas você precisa saber que deve: tire os marcadores, transforme __at__ em @ e __dot__ em ponto, e você tem o mesmo endereço que a coluna limpa contém.

O que você recebe

Trinta colunas,
e formatos que medimos.

Os nomes são a lista declarada pelo próprio serviço. Os formatos foram lidos de linhas reais. Lembre-se de que a maioria está ausente em vez de vazia quando uma empresa não a publica.

query
O termo ou a URL de busca de onde esta linha veio, ecoado em cada linha. Sempre presente - agrupe por ele quando um arquivo cobrir várias buscas.
profile_id
O identificador do próprio BBB para a empresa, como texto unido por sublinhados. A chave estável para cruzar entre execuções.
url
A página de perfil da empresa no BBB. Presente em todas as linhas - e o lugar aonde ir para as avaliações dela.
name
O nome da empresa como o BBB o lista. Presente em todas as linhas.
type_of_entity
A forma jurídica que o BBB registra - sociedade, autônomo e assim por diante, incluindo Unknown quando não está estabelecida.
contact_information
Um contato com nome e o cargo dele, como Mr Jeff Graves (Owner/Manager). Isto é uma pessoa - veja a nota jurídica abaixo.
num_employees
Número de funcionários como número. Um dos campos mais raros aqui: a maioria dos perfis não publica, então espere que a chave falte bem mais vezes do que aparece.
primary_category
O ramo principal. Em todas as linhas que lemos que traziam ambas, esta era idêntica a category.
all_categories
Todas as categorias que a empresa lista, como um único texto unido por vírgulas em vez de um array. Normalmente várias, e bem mais amplo que a principal.
category
O ramo principal de novo - o mesmo valor de primary_category em todas as linhas que vimos. Presente em todas as linhas, o que primary_category não é.
years_in_business
Há quanto tempo atuam, como número.
business_start
O ano de fundação, como texto em vez de número - 1992. Vale notar se você faz contas entre isso e years_in_business.
website
O site da própria empresa, onde publicado.
email
Um endereço de contato, limpo e utilizável. Só alguns perfis publicam um.
additional_emails
O mesmo tipo de endereço, mas ofuscado pelo BBB - marcadores em volta de uma forma que usa __at__ e __dot__. Toda linha que tem este campo é assim; decodifique antes de usar, ou prefira email.
phone
O número principal, formatado como o BBB exibe. Presente em todas as linhas.
fax_numbers
Um número de fax quando há um listado, no mesmo formato.
additional_phone
Um número secundário quando há um listado.
displayed_address
O endereço completo numa linha, do jeito que o perfil mostra.
address
Só a parte da rua. Presente como chave em todas as linhas, embora às vezes vazia - uma das poucas que se comporta assim em vez de ser omitida.
city
A cidade. Presente em todas as linhas.
state
O código de estado ou região. Presente em todas as linhas.
postalcode
O CEP, às vezes na forma longa ZIP+4. Presente em todas as linhas.
country
O país. Todas as linhas que lemos diziam USA, mas todas as buscas que rodamos eram dos EUA, então trate isso como uma propriedade das nossas execuções e não como um limite do serviço.
service_area
Até onde se deslocam, como array de textos - tipicamente condados, depois o estado, depois o país.
accredited
Se a empresa é credenciada pelo BBB, como o texto Yes ou No em vez de booleano. Presente em todas as linhas.
rating
A nota em letra do BBB como texto - A+, A, A- e assim por diante. É a avaliação do próprio BBB, não uma pontuação de clientes. Não confunda com a nota em estrelas da nossa página de avaliações, que é um número.
average_rating
A média de estrelas dos clientes, como número de 1 a 5. Esta é a que vem de quem avalia. Ausente em empresas sem avaliações.
reviews_total
Quantas avaliações de clientes o perfil tem, como número. Em todas as linhas que lemos ela apareceu junto com average_rating - nunca uma sem a outra.
images
A imagem do perfil como um único objeto com height, width, url e altText - não um array, e altText era null em todas as linhas que vimos.

Os formatos acima foram medidos em vez de descritos. Seis exportações, todas as linhas lidas: rating um texto de nota em letra, average_rating um número de 1 a 5 sempre pareado com reviews_total, accredited o texto Yes ou No, service_area um array, images um único objeto, all_categories um texto unido por vírgulas, e category idêntica a primary_category em todas as linhas que tinham as duas. Duas coisas para levar. Primeira, esta exportação omite chaves em vez de esvaziá-las, então só um punhado de colunas está garantido em qualquer linha - leia o JSON defensivamente ou pegue a planilha. Segunda, a tabela acima lista trinta das trinta e duas colunas declaradas: licenses e social_media não apareceram em nada do que rodamos, então em vez de descrever campos dos quais nunca vimos um valor, nós os nomeamos aqui e os deixamos de fora. Elas podem se preencher para categorias que não tocamos. Tudo o que rodamos foi busca nos EUA, então esta página também não afirma nada sobre cobertura em outros lugares.

Casos de uso

Três tarefas pelas quais
as pessoas usam isto.

Todos começam por algo que você digitaria na busca do próprio BBB.

Leads

Montar uma lista curta com nota dentro de um ramo

Busque uma categoria, fique com rating e accredited, e você tem uma lista filtrada por algo que uma ficha de mapa não te dá - a avaliação do próprio BBB. Acrescente years_in_business e dá para favorecer empresas com histórico em vez de um perfil novo.

Vendas · Geração de leads
Diligência

Conferir uma lista de fornecedores contra o registro

Coloque os ramos de quem você compra e cruze por name e displayed_address. O que volta é nota, credenciamento e há quanto tempo cada um atua - e url leva direto ao perfil se uma nota pedir um olhar mais atento.

Compras · Risco
Cobertura

Mapear quem realmente atende uma área

service_area é um array dos condados e estados aonde uma empresa se desloca, o que é uma pergunta diferente de onde fica o escritório dela. Para quem planeja cobertura territorial, essa distinção é o ponto todo.

Operações · Serviços de campo
Preços

Pague por linha de empresa,
nada além.

Sem assinatura, sem mínimo, sem licença por usuário. Suas primeiras 500 linhas são por nossa conta - depois disso é pago conforme o uso.

Grátis

500 linhas

Em cada conta nova, uma única vez. Sem cartão de crédito. Todos os scrapers liberados - e o bastante para rodar uma categoria e ver por conta própria quais colunas aparecem e quais simplesmente não estão lá.

Uma única vez · Sem cartão
Pague conforme o uso

US$ 0,002 por linha

Cerca de US$ 2 por 1.000 empresas, a mesma taxa fixa de qualquer outro scraper da plataforma. O limite é por consulta e não tem valor padrão, então uma categoria ampla com o campo vazio pode rodar longo - defina um pequeno primeiro.

Os créditos nunca expiram
Enterprise

Sob medida - categorias inteiras, de forma agendada

Preços por volume, SLAs, workers dedicados e onboarding sob medida para times que constroem um diretório em vez de uma lista curta. Diga seus números e nós orçamos.

Fale com vendas
10 % de desconto na sua primeira execução paga.Use o código LIVESCRAPER10 no checkout.
Cadastre-se
Combina bem com

O perfil,
e o que há dentro dele.

Este devolve a empresa. Estes devolvem o que as pessoas disseram sobre ela, e onde mais ela aparece.

Jurídico

É legal fazer scraping
de perfis de empresa do BBB?

Resposta curta: são registros públicos de empresas - mas esta exportação carrega mais sobre pessoas do que a maioria, e vale ser deliberado quanto a isso.

Tudo nessas colunas é mostrado a qualquer visitante num perfil público do BBB, logado ou não. Nenhum login é usado, nenhum paywall é atravessado e nenhuma conta é tocada, e a execução passa pelo nosso pool de proxies em vez do seu próprio endereço. Coletar informação empresarial listada publicamente para pesquisa, geração de leads e diligência prévia é prática consolidada há muito tempo.

Dados de contato empresariais não estão automaticamente isentos da lei de privacidade. contact_information traz uma pessoa nomeada e o cargo dela, e email, phone e additional_phone são formas de alcançar uma pessoa mesmo quando ela figura sob um nome de empresa. O endereço listado de uma empresa pequena muitas vezes é a casa de alguém. Sob o GDPR e regimes semelhantes isso são dados pessoais, e se você pretende usá-los para prospecção ainda há regras de marketing a cumprir - a CAN-SPAM Act nos EUA, PECR e o GDPR no Reino Unido e na UE - que tratam de consentimento e descadastro, não de como você obteve o endereço.

A ofuscação em additional_emails é um sinal que vale ler com honestidade: o BBB tomou uma medida deliberada para dificultar a coleta em massa daquela coluna. Nada impede você de decodificá-la, e esta página diz como, mas trate isso como um lembrete de ser proporcional - uma lista curta que você vai realmente contatar é coisa diferente de uma lista de mala direta raspada. Os termos do BBB regem o acesso automatizado ao site deles; leia-os antes de escalar. Não rodamos rastreadores de terceiros na camada de dados, e suas exportações se autoexcluem em 30 dias.

livescraper.app · princípios
Apenas páginas de perfil públicas do BBB
Sem logins, sem paywalls
Contatos nomeados e e-mails são dados pessoais - as regras de marketing continuam valendo!
Sem rastreadores de terceiros na camada de dados
As exportações se excluem sozinhas (30 dias)
Os mesmos registros que qualquer visitante vê no bbb.org.
FAQ

O que as pessoas perguntam antes de se cadastrar.

As perguntas que mais ouvimos. Mais alguma coisa? Fale conosco - quem escreve as respostas são pessoas, não bots.

O que eu envio?+
Qualquer uma de três coisas, misturadas livremente, uma por linha: um termo de busca simples como auto sellers, uma URL de categoria do BBB como bbb.org/us/category/…, ou uma URL completa bbb.org/search com os filtros de localização que quiser. Montar a busca antes no bbb.org é o jeito fácil de fixar um lugar. Você pode enviar um arquivo CSV, XLSX, TXT ou Parquet em vez de colar.
Por que faltam algumas colunas numa linha?+
Porque esta exportação omite uma chave por completo quando a empresa não publica aquele campo, em vez de incluí-la com valor vazio. Só um punhado está presente em todas as linhas - a consulta, a URL do perfil, o nome, a categoria, o telefone, a cidade, o estado, o CEP e o credenciamento. Num download CSV ou Excel você não vai notar, já que as colunas se alinham e as lacunas são células em branco. Na exportação JSON importa: código que supõe que row.website existe vai receber undefined. Leia defensivamente, ou use o formato de planilha.
rating é a pontuação em estrelas?+
Não. Aqui rating é a nota em letra do próprio BBB, um texto como A+ ou A-. A média de estrelas dos clientes é uma coluna à parte, average_rating, que é um número de 1 a 5 e aparece ao lado de reviews_total. Vale conferir duas vezes se você também usa nosso Scraper de Avaliações de Empresas do BBB, porque naquela página rating significa a pontuação em estrelas.
Por que additional_emails está cheio de caracteres estranhos?+
Essa é a ofuscação antiscraping do próprio BBB, não um dano do nosso lado. O endereço vem envolto em marcadores com __at__ no lugar do @ e __dot__ no lugar dos pontos. Toda linha que tem o campo é assim, e a coluna email simples nunca é. Tire os marcadores e troque esses dois tokens de volta e você tem o mesmo endereço que a coluna limpa contém.
Quais colunas a exportação vai conter?+
O serviço declara trinta e duas: query, profile_id, url, name, type_of_entity, contact_information, num_employees, primary_category, all_categories, category, licenses, years_in_business, business_start, website, social_media, email, additional_emails, phone, fax_numbers, additional_phone, displayed_address, address, city, state, postalcode, country, service_area, accredited, rating, average_rating, reviews_total e images. Duas delas - licenses e social_media - não apareceram em nada do que rodamos, então documentamos trinta.
Como funciona o limite?+
Ele aceita um mínimo de 1 e não tem valor padrão - deixá-lo vazio busca tudo, o que o formulário diz na própria observação. Vale por consulta, então várias buscas multiplicam. Uma categoria ampla sem limite pode rodar longo, então defina um pequeno para uma primeira olhada.
Cobre apenas os EUA?+
Não podemos dizer. Todas as buscas que rodamos eram dos EUA e todas as linhas voltaram com USA na coluna de país, mas isso é uma propriedade das nossas execuções e não algo que tenhamos estabelecido sobre o serviço. O próprio exemplo do formulário inclui um parâmetro find_country, então teste o mercado que te interessa no plano gratuito.
Quanto custa?+
As primeiras 500 linhas de uma conta nova são gratuitas e valem uma única vez; depois disso são 0,002 $ por linha - cerca de 2 $ por 1.000 - pago conforme o uso, sem assinatura. Os créditos não expiram e não há reinício mensal.

Rode uma categoria
e veja as lacunas.

O jeito mais rápido de aprender esta exportação é observar quais colunas aparecem e quais simplesmente não estão lá. Suas primeiras 500 linhas são grátis.

Exportar perfis de empresa do BBB como linhas

O Scraper de Empresas do BBB transforma o diretório do Better Business Bureau em planilha. Você envia um termo de busca simples, uma URL de categoria do BBB, ou uma URL completa bbb.org/search carregando os filtros de localização que você definiu - um por linha, misturados livremente, ou enviados como arquivo CSV, XLSX, TXT ou Parquet -, define um limite se quiser, e cada empresa volta como uma linha: o nome, a nota em letra do BBB, se é credenciada, suas categorias em dois níveis, o endereço dividido em partes, telefone e fax, site e e-mail, há quanto tempo atua, a área de atendimento que cobre e uma imagem de perfil. Uma linha por empresa, baixável como CSV, Excel ou JSON. Este serviço não tem controle de ordenação; o que molda a execução são a consulta e o limite.

O comportamento a entender antes de escrever qualquer código contra isto é que a exportação omite chaves em vez de esvaziá-las. Quando uma empresa não publica um campo, aquela coluna está ausente da linha por completo, e ao longo das linhas que lemos havia dezenas de conjuntos de chaves diferentes dentro de um único arquivo. Só um punhado está presente sempre: a consulta, a URL do perfil, o nome, a categoria principal, o telefone, a cidade, o estado e o CEP, e o indicador de credenciamento. Num download CSV ou Excel isso é invisível, porque as colunas se alinham e as lacunas são células em branco. Em JSON é a diferença entre uma string vazia e undefined, então leia defensivamente ou pegue a planilha e deixe que ela normalize por você.

Duas colunas têm nomes que enganam quem passa os olhos rápido. rating é a nota em letra do próprio BBB - um texto como A+ - e não uma pontuação de clientes; a média de estrelas dos clientes é average_rating, um número de 1 a 5 que aparece junto com reviews_total e só para empresas que têm avaliações. Se você também usa nosso Scraper de Avaliações de Empresas do BBB, note que lá rating significa a pontuação em estrelas, então a mesma palavra significa duas coisas diferentes entre as duas páginas. No mais, os formatos são consistentes e foram medidos em vez de presumidos: accredited é o texto Yes ou No em vez de booleano, service_area é um array de condados e estados, images é um único objeto em vez de array, all_categories é um texto unido por vírgulas normalmente bem mais amplo que a category principal, e business_start é um ano guardado como texto enquanto years_in_business é um número.

Uma coluna chega deliberadamente deformada. additional_emails carrega a ofuscação antiscraping do próprio BBB, com marcadores em volta de uma forma que escreve __at__ para o @ e __dot__ para os pontos; toda linha que tem o campo é assim, e a coluna email simples nunca é. Desfazer isso é mecânico depois que você sabe que precisa. Duas das trinta e duas colunas declaradas, licenses e social_media, não apareceram em nada do que rodamos, então esta página documenta trinta e diz isso, em vez de descrever campos dos quais nunca viu um valor. No aspecto legal são registros públicos de empresas, mas a exportação traz um contato nomeado e dados de contato diretos, e o endereço listado de uma empresa pequena muitas vezes é a casa de alguém - trate como dados pessoais, e lembre-se de que usá-los para prospecção traz regras de marketing próprias, independentemente de como você os obteve. Leia os termos do BBB antes de escalar. Comece grátis: suas primeiras 500 linhas não custam nada e não exigem cartão, depois US$ 0,002 por linha, taxa fixa. Veja preços para as tarifas atuais.