Scraper de Empresas de BBB

El directorio,
como hoja de cálculo.

Escribe un oficio - o pega una URL de categoría o de búsqueda de BBB - y las empresas vuelven como filas: el nombre, la nota en letra de BBB, si están acreditadas, sus categorías, dirección, teléfono, email, web y cuánto tiempo llevan operando.

500 filas gratis, una sola vezdespués 0,002 $ por filauna fila por empresaCSV · JSON · Excel
Cómo funciona

Tres formas de preguntar,
una caja.

Aquí no hay control de ordenación. Lo que da forma a la ejecución es qué escribes y cuánto quieres.

  1. PASO 1Inicia sesión en la plataforma.
  2. PASO 2Abre el Scraper de Empresas de BBB.
  3. PASO 3Introduce un término de búsqueda simple como auto sellers, una URL de categoría tipo bbb.org/us/category/…, o una URL completa bbb.org/search?… con los filtros de ubicación que quieras - uno por línea, mezclados libremente.
  4. PASO 4O sube un archivo CSV, XLSX, TXT o Parquet con lo mismo.
  5. PASO 5Fija un límite por consulta si quieres uno. Acepta un mínimo de 1, y dejarlo vacío se lo lleva todo - no hay valor por defecto.
  6. PASO 6Haz clic en Start scraping y descarga como CSV, JSON o Excel.

Construir la búsqueda antes en bbb.org es la forma fácil de fijar una ubicación: los filtros que pongas allí viajan con la URL.

Por qué es útil

Una nota, una categoría
y una forma de contactar.

Tres cosas que lleva esta exportación y que un directorio de empresas genérico normalmente no tiene.

La nota propia de BBB, y la acreditación

rating es la nota en letra que asigna BBB - una cadena como A+, no una puntuación en estrellas - y accredited dice si la empresa paga por estar acreditada. Juntas son un filtro que no puedes construir desde una ficha de mapa: una preselección de empresas calificadas y acreditadas dentro de un oficio.

Categorías en dos niveles

category es el oficio principal y all_categories es la lista completa separada por comas, que suele ser de varias. Una empresa de tejados que también lista ventanas y revestimientos muestra ambas - así puedes buscar en estrecho y aun así ver todo lo demás que declaran hacer.

Datos de contacto, donde se publiquen

Teléfono, web, dirección y a menudo un email llegan como columnas separadas, junto a years_in_business y un contacto con nombre. No todas las empresas publican todo - mira la nota de abajo sobre cómo trata eso esta exportación, porque no hace lo que esperarías.

Lee esto primero

Esta exportación omite claves
en vez de vaciarlas.

Es lo único genuinamente sorprendente de este servicio, y romperá el código ingenuo. Dos minutos aquí ahorran una tarde.

Cuando una empresa no publica un campo, la columna no está en blanco - está ausente de esa fila por completo. A lo largo de las filas que hemos leído había decenas de conjuntos de claves distintos dentro de un mismo archivo. Solo un puñado de columnas aparecía en todas: la consulta, la URL del perfil, el nombre, la categoría principal, el teléfono, la ciudad, el estado y el código postal, y si la empresa está acreditada. Todo lo demás va y viene según lo que esa empresa haya decidido publicar.

En una descarga CSV o Excel esto es invisible - las columnas cuadran y los huecos son celdas vacías. Para la exportación JSON importa mucho. El código que lee row.website y espera una cadena obtendrá undefined en vez de una cadena vacía, y cualquier cosa que asuma una forma uniforme entre filas fallará con la primera empresa que se guarde su email. Lee a la defensiva, o coge el formato de hoja de cálculo y deja que normalice por ti.

Dos de las columnas declaradas no aparecieron en absoluto en nada de lo que ejecutamos - licenses y social_media. Forman parte de la lista de columnas que declara el servicio, así que podrían poblarse para empresas o categorías que no tocamos, pero nunca hemos visto un valor en ninguna de las dos y por eso no tienen entrada en la tabla de abajo. Por eso lista treinta y no treinta y dos.

Una columna llega deliberadamente destrozada. additional_emails lleva la ofuscación antiscraping propia de BBB - una dirección aparece como algo tipo …finance__at__troysellersauto__dot__com… envuelta en marcadores. Todas las filas que tienen el campo son así, y la columna email a secas nunca lo es. Deshacerlo es mecánico, pero hay que saber hacerlo: quita los marcadores, convierte __at__ en una @ y __dot__ en un punto, y obtienes la misma dirección que contiene la columna limpia.

Lo que obtienes

Treinta columnas,
y formatos que medimos.

Los nombres son la lista que declara el propio servicio. Los formatos se leyeron de filas reales. Recuerda que la mayoría están ausentes en vez de vacías cuando una empresa no las publica.

query
El término o la URL de búsqueda de la que salió esta fila, volcado en cada fila. Presente siempre - agrupa por él cuando un archivo cubra varias búsquedas.
profile_id
El identificador propio de BBB para la empresa, como cadena unida por guiones bajos. La clave estable para cruzar entre ejecuciones.
url
La página de perfil de la empresa en BBB. Presente en todas las filas - y el sitio al que ir para sus reseñas.
name
El nombre de la empresa tal como lo lista BBB. Presente en todas las filas.
type_of_entity
La forma jurídica que registra BBB - sociedad, autónomo y demás, incluido Unknown cuando no está establecida.
contact_information
Un contacto con nombre y su cargo, como Mr Jeff Graves (Owner/Manager). Esto es una persona - mira la nota legal de abajo.
num_employees
Plantilla como número. Uno de los campos más raros aquí: la mayoría de perfiles no lo publica, así que espera que la clave falte mucho más a menudo de lo que aparece.
primary_category
El oficio principal. En todas las filas que leímos que llevaban ambas, esta era idéntica a category.
all_categories
Todas las categorías que lista la empresa, como una cadena unida por comas y no como un array. Normalmente varias, y mucho más amplia que la principal.
category
El oficio principal otra vez - el mismo valor que primary_category en todas las filas que hemos visto. Presente en todas las filas, cosa que primary_category no es.
years_in_business
Cuánto llevan operando, como número.
business_start
El año de fundación, como cadena en vez de número - 1992. Conviene tenerlo en cuenta si haces cuentas entre esto y years_in_business.
website
La web propia de la empresa, donde se publique.
email
Una dirección de contacto, limpia y utilizable. Solo algunos perfiles publican una.
additional_emails
El mismo tipo de dirección, pero ofuscada por BBB - marcadores alrededor de una forma que usa __at__ y __dot__. Todas las filas que tienen este campo son así; descodifícalo antes de usarlo, o mejor usa email.
phone
El número principal, formateado como lo muestra BBB. Presente en todas las filas.
fax_numbers
Un número de fax cuando hay uno listado, con el mismo formato.
additional_phone
Un número secundario cuando hay uno listado.
displayed_address
La dirección completa en una línea, tal como la muestra el perfil.
address
Solo la parte de la calle. Presente como clave en todas las filas, aunque a veces vacía - una de las pocas que se comporta así en vez de omitirse.
city
La ciudad. Presente en todas las filas.
state
El código de estado o región. Presente en todas las filas.
postalcode
El código postal, a veces en la forma larga ZIP+4. Presente en todas las filas.
country
El país. Todas las filas que hemos leído decían USA, pero todas las búsquedas que ejecutamos eran de EE. UU., así que trátalo como una propiedad de nuestras ejecuciones y no como un límite del servicio.
service_area
Hasta dónde se desplazan, como array de cadenas - normalmente condados, luego el estado, luego el país.
accredited
Si la empresa está acreditada por BBB, como la cadena Yes o No en vez de un booleano. Presente en todas las filas.
rating
La nota en letra de BBB como cadena - A+, A, A- y demás. Es la valoración propia de BBB, no una puntuación de clientes. No la confundas con la valoración en estrellas de nuestra página de reseñas, que es un número.
average_rating
La media de estrellas de los clientes, como número del 1 al 5. Esta es la que viene de quienes reseñan. Ausente en empresas sin reseñas.
reviews_total
Cuántas reseñas de clientes tiene el perfil, como número. En todas las filas que leímos apareció junto a average_rating - nunca una sin la otra.
images
La imagen del perfil como un único objeto con height, width, url y altText - no un array, y altText era null en todas las filas que hemos visto.

Los formatos de arriba se midieron en vez de describirse. Seis exportaciones, todas las filas leídas: rating una cadena de nota en letra, average_rating un número del 1 al 5 siempre emparejado con reviews_total, accredited la cadena Yes o No, service_area un array, images un único objeto, all_categories una cadena unida por comas, y category idéntica a primary_category en todas las filas que tenían ambas. Dos cosas que llevarse. Primera, esta exportación omite claves en vez de vaciarlas, así que solo un puñado de columnas está garantizado en una fila cualquiera - lee el JSON a la defensiva o coge la hoja de cálculo. Segunda, la tabla de arriba lista treinta de las treinta y dos columnas declaradas: licenses y social_media no aparecieron en nada de lo que ejecutamos, así que en vez de describir campos de los que nunca hemos visto un valor los nombramos aquí y los dejamos fuera. Podrían poblarse para categorías que no tocamos. Todo lo que ejecutamos fue una búsqueda de EE. UU., así que esta página tampoco afirma nada sobre la cobertura en otros sitios.

Casos de uso

Tres tareas para las que
la gente lo usa.

Todos empiezan por algo que escribirías en el propio buscador de BBB.

Leads

Montar una preselección calificada dentro de un oficio

Busca una categoría, quédate con rating y accredited, y tienes una lista filtrada por algo que una ficha de mapa no puede darte: la valoración propia de BBB. Añade years_in_business y podrás favorecer empresas con trayectoria frente a un perfil nuevo.

Ventas · Generación de leads
Diligencia

Cotejar una lista de proveedores contra el registro

Mete los oficios a los que compras y cruza por name y displayed_address. Lo que vuelve es nota, acreditación y cuánto lleva operando cada uno - y url te lleva directo al perfil si una nota invita a mirar más de cerca.

Compras · Riesgo
Cobertura

Mapear quién sirve realmente una zona

service_area es un array de los condados y estados a los que se desplaza una empresa, que es una pregunta distinta de dónde está su oficina. Para quien planifica cobertura territorial, esa distinción es justo el asunto.

Operaciones · Servicios de campo
Precios

Paga por fila de empresa,
por nada más.

Sin suscripción, sin mínimo, sin licencia por usuario. Tus primeras 500 filas corren de nuestra cuenta; a partir de ahí, pago por uso.

Gratis

500 filas

En cada cuenta nueva, una sola vez. Sin tarjeta de crédito. Todos los scrapers desbloqueados - y suficiente para ejecutar una categoría y ver por ti mismo qué columnas aparecen y cuáles simplemente no están.

Una sola vez · Sin tarjeta
Pago por uso

0,002 $ por fila

Unos 2 $ por cada 1.000 empresas, la misma tarifa plana que cualquier otro scraper de la plataforma. El límite es por consulta y no tiene valor por defecto, así que una categoría amplia con el campo vacío puede alargarse - fija uno pequeño primero.

Los créditos no caducan
Empresas

A medida - categorías enteras, de forma programada

Precios por volumen, SLAs, workers dedicados y onboarding a medida para equipos que construyen un directorio en vez de una preselección. Dinos tus números y te hacemos un presupuesto.

Habla con ventas
10 % de descuento en tu primera ejecución de pago.Usa el código LIVESCRAPER10 al pagar.
Registrarse
Combina bien con

El perfil,
y lo que hay dentro.

Este devuelve la empresa. Estos devuelven lo que la gente dijo de ella, y dónde más aparece.

Legal

¿Es legal scrapear
perfiles de empresa de BBB?

Respuesta corta: son fichas públicas de empresas - pero esta exportación lleva más sobre personas que la mayoría, y merece la pena ser deliberado al respecto.

Todo lo que hay en estas columnas se le muestra a cualquier visitante en un perfil público de BBB, con sesión iniciada o sin ella. No se usa ningún inicio de sesión, no se cruza ningún muro de pago y no se toca ninguna cuenta, y la ejecución va por nuestro pool de proxies en vez de por tu propia dirección. Recopilar información empresarial listada públicamente para investigación, generación de leads y diligencia debida es una práctica asentada desde hace mucho.

Los datos de contacto empresariales no están automáticamente exentos de la normativa de privacidad. contact_information contiene una persona con nombre y su cargo, y email, phone y additional_phone son formas de llegar a una persona aunque figure bajo un nombre de empresa. La dirección listada de una empresa pequeña es a menudo la casa de alguien. Bajo el RGPD y regímenes similares eso son datos personales, y si piensas usarlos para prospección tienes además normas de marketing que cumplir - la CAN-SPAM Act en EE. UU., PECR y el RGPD en Reino Unido y la UE - que van de consentimiento y bajas, no de cómo obtuviste la dirección.

La ofuscación de additional_emails es una señal que conviene leer con honestidad: BBB ha dado un paso deliberado para dificultar la recolección masiva de esa columna. Nada te impide descodificarla, y esta página te dice cómo, pero tómalo como recordatorio de ser proporcionado - una preselección a la que vas a contactar de verdad es cosa distinta de una lista de correo scrapeada. Los términos de BBB rigen el acceso automatizado a su sitio; léelos antes de escalar. No usamos rastreadores de terceros en la capa de datos, y tus exportaciones se autoeliminan a los 30 días.

livescraper.app · principios
Solo páginas de perfil públicas de BBB
Sin inicios de sesión ni muros de pago
Los contactos con nombre y los emails son datos personales - las normas de marketing siguen aplicando!
Sin rastreadores de terceros en la capa de datos
Las exportaciones se autoeliminan (30 días)
Las mismas fichas que ve cualquier visitante en bbb.org.
FAQ

Lo que se pregunta antes de registrarse.

Las preguntas que más nos hacen. ¿Algo más? Habla con nosotros: las respuestas las escriben personas, no bots.

¿Qué envío?+
Cualquiera de tres cosas, mezcladas libremente, una por línea: un término de búsqueda simple como auto sellers, una URL de categoría de BBB tipo bbb.org/us/category/…, o una URL completa bbb.org/search con los filtros de ubicación que quieras. Construir la búsqueda antes en bbb.org es la forma fácil de fijar un sitio. Puedes subir un archivo CSV, XLSX, TXT o Parquet en vez de pegar.
¿Por qué faltan algunas columnas en una fila?+
Porque esta exportación omite una clave por completo cuando la empresa no publica ese campo, en vez de incluirla con un valor vacío. Solo un puñado está presente en todas las filas: la consulta, la URL del perfil, el nombre, la categoría, el teléfono, la ciudad, el estado, el código postal y la acreditación. En una descarga CSV o Excel no lo notarás, ya que las columnas cuadran y los huecos son celdas en blanco. En la exportación JSON importa: el código que asume que row.website existe obtendrá undefined. Lee a la defensiva, o usa el formato de hoja de cálculo.
¿rating es la puntuación en estrellas?+
No. Aquí rating es la nota en letra propia de BBB, una cadena como A+ o A-. La media de estrellas de clientes es una columna aparte, average_rating, que es un número del 1 al 5 y aparece junto a reviews_total. Merece la pena comprobarlo dos veces si también usas nuestro Scraper de Reseñas de Empresas de BBB, porque en esa página rating significa la puntuación en estrellas.
¿Por qué additional_emails está lleno de caracteres raros?+
Es la ofuscación antiscraping propia de BBB, no un daño de nuestro lado. La dirección va envuelta en marcadores con __at__ en lugar de la @ y __dot__ en lugar de los puntos. Todas las filas que tienen el campo son así, y la columna email a secas nunca lo es. Quita los marcadores y cambia esos dos tokens de vuelta y obtienes la misma dirección que contiene la columna limpia.
¿Qué columnas contendrá la exportación?+
El servicio declara treinta y dos: 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. Dos de ellas - licenses y social_media - no aparecieron en nada de lo que ejecutamos, así que documentamos treinta.
¿Cómo funciona el límite?+
Acepta un mínimo de 1 y no tiene valor por defecto - dejarlo vacío se lo lleva todo, que es lo que dice el formulario en su propia nota. Se aplica por consulta, así que varias búsquedas lo multiplican. Una categoría amplia sin límite puede alargarse, así que fija uno pequeño para un primer vistazo.
¿Solo cubre EE. UU.?+
No lo podemos decir. Todas las búsquedas que hemos ejecutado eran de EE. UU. y todas las filas volvieron con USA en la columna de país, pero eso es una propiedad de nuestras ejecuciones y no algo que hayamos establecido sobre el servicio. El propio ejemplo del formulario incluye un parámetro find_country, así que prueba el mercado que te interese en el plan gratuito.
¿Cuánto cuesta?+
Las primeras 500 filas de una cuenta nueva son gratis y por una sola vez; a partir de ahí son 0,002 $ por fila (unos 2 $ por cada 1.000), con pago por uso y sin suscripción. Los créditos no caducan y no hay reinicio mensual.

Ejecuta una categoría
y mira los huecos.

La forma más rápida de aprender esta exportación es ver qué columnas aparecen y cuáles simplemente no están. Tus primeras 500 filas son gratis.

Exportar perfiles de empresa de BBB como filas

El Scraper de Empresas de BBB convierte el directorio del Better Business Bureau en una hoja de cálculo. Envías un término de búsqueda simple, una URL de categoría de BBB, o una URL completa de bbb.org/search con los filtros de ubicación que hayas puesto - uno por línea, mezclados libremente, o subidos como archivo CSV, XLSX, TXT o Parquet -, fijas un límite si quieres, y cada empresa vuelve como una fila: el nombre, la nota en letra de BBB, si está acreditada, sus categorías en dos niveles, la dirección desglosada, teléfono y fax, web y email, cuánto lleva operando, el área de servicio que cubre y una imagen de perfil. Una fila por empresa, descargable como CSV, Excel o JSON. Este servicio no tiene control de ordenación; lo que da forma a la ejecución son la consulta y el límite.

El comportamiento que hay que entender antes de escribir código contra esto es que la exportación omite claves en vez de vaciarlas. Cuando una empresa no publica un campo, esa columna está ausente de la fila por completo, y a lo largo de las filas que hemos leído había decenas de conjuntos de claves distintos dentro de un mismo archivo. Solo un puñado está presente siempre: la consulta, la URL del perfil, el nombre, la categoría principal, el teléfono, la ciudad, el estado y el código postal, y el indicador de acreditación. En una descarga CSV o Excel esto es invisible, porque las columnas cuadran y los huecos son celdas en blanco. En JSON es la diferencia entre una cadena vacía y undefined, así que lee a la defensiva o coge la hoja de cálculo y deja que normalice por ti.

Dos columnas llevan nombres que despistan si vas rápido. rating es la nota en letra propia de BBB - una cadena como A+ - y no una puntuación de clientes; la media de estrellas de clientes es average_rating, un número del 1 al 5 que aparece junto a reviews_total y solo para empresas con reseñas. Si también usas nuestro Scraper de Reseñas de Empresas de BBB, ten en cuenta que allí rating significa la puntuación en estrellas, así que la misma palabra significa dos cosas distintas entre el par. Por lo demás los formatos son consistentes y se midieron en vez de suponerse: accredited es la cadena Yes o No en vez de un booleano, service_area es un array de condados y estados, images es un único objeto en vez de un array, all_categories es una cadena unida por comas normalmente mucho más amplia que la category principal, y business_start es un año guardado como cadena mientras que years_in_business es un número.

Una columna llega deliberadamente destrozada. additional_emails lleva la ofuscación antiscraping propia de BBB, con marcadores alrededor de una forma que escribe __at__ por la @ y __dot__ por los puntos; todas las filas que tienen el campo son así, y la columna email a secas nunca lo es. Deshacerlo es mecánico una vez sabes que hay que hacerlo. Dos de las treinta y dos columnas declaradas, licenses y social_media, no aparecieron en nada de lo que ejecutamos, así que esta página documenta treinta y lo dice en vez de describir campos de los que nunca ha visto un valor. En lo legal son fichas públicas de empresas, pero la exportación lleva un contacto con nombre y datos de contacto directos, y la dirección listada de una empresa pequeña es a menudo la casa de alguien - trátalo como datos personales, y recuerda que usarlo para prospección trae normas de marketing propias independientemente de cómo lo obtuviste. Lee los términos de BBB antes de escalar. Empieza gratis: tus primeras 500 filas no cuestan nada y no necesitan tarjeta, luego 0,002 $ por fila, tarifa plana. Consulta precios para las tarifas actuales.