¿Cómo extraer las métricas de Ahrefs para un listado de dominios sin API?

Ahrefs es una herramienta muy potente para conocer el peso y la relevancia SEO que pueden tener los dominios. Para algunas tareas de SEO (Link Building, revisión de Backlinks, etc.) muchas veces es necesario comprobar las métricas de un amplio listado de dominios y si no se quiere utilizar la API el proceso manual que implica puede hacerse repetitivo y pesado.

Por esto existe este script imacro que lo hace todo y resume las métricas en un archivo .csv sencillo, solo hace falta indicar el listado de dominios a comprobar, lanzar el script y dejarlo funcionar durante una hora, una noche o más tiempo si es necesario.

Ahrefs Scraper, pasos del script:

1/ Instalar imacros en Firefox

2/ Colocar los archivos (descargar aquí) en la carpeta de las macros

3/ Editar el listado de Root Domains a checkear (archivo RD-para-ahrefs.csv)

4/ Editar código de la macro vía Firefox (cambiar la ruta de los archivos)

SET !DATASOURCE C:\Users\bromain\Documents\iMacros\Macros\RD-para-ahrefs.csv
SAVEAS TYPE=EXTRACT FOLDER=C:\Users\bromain\Documents\iMacros\Macros\ FILE=Resultats-ahrefs.csv

5/ Loguearse en la página Ahrefs (seleccionar idioma: “inglés”)

6/ Lanzar el script en bucle y cada x segundos (40 segundos por defecto, basado en el tiempo indicado en las líneas “WAIT SECONDS=” que se pueden cambiar en función de la prisa y máquina que tenéis) recupera las métricas de los dominios y las almacena en el archivo Resultats-ahrefs.csv

Código del script en bruto:

VERSION BUILD=7601105 RECORDER=FX
FILTER TYPE=IMAGES STATUS=ON
SET !TIMEOUT_STEP 0
SET !TIMEOUT_PAGE 10
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
TAB T=1
SET !DATASOURCE C:\Users\bromain\Documents\iMacros\Macros\RD-para-ahrefs.csv
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}

URL GOTO=https://ahrefs.com/site-explorer
WAIT SECONDS=10
TAG POS=1 TYPE=A ATTR=TXT:SiteExplorer
WAIT SECONDS=10
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:site_explorer_q CONTENT={{!COL1}}
WAIT SECONDS=10
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:SiteExplorerStart

‘Limite check 500/día, o sea 20/hora o un check cada 3 min (180s)
WAIT SECONDS=10
‘WAIT SECONDS=180

TAG POS=1 TYPE=STRONG ATTR=ID:global_rank* EXTRACT=TXT
TAG POS=1 TYPE=STRONG ATTR=ID:ahrefs_rank* EXTRACT=TXT
TAG POS=1 TYPE=STRONG ATTR=ID:ahrefs_domain_rank* EXTRACT=TXT
TAG POS=1 TYPE=STRONG ATTR=ID:total_backlinks_top_info* EXTRACT=TXT
TAG POS=1 TYPE=STRONG ATTR=ID:referring_domains_top_info* EXTRACT=TXT
TAG POS=1 TYPE=P ATTR=ID:soc_stats_flikes_user_query EXTRACT=TXT
TAG POS=1 TYPE=P ATTR=ID:soc_stats_tweets_user_query EXTRACT=TXT
TAG POS=1 TYPE=P ATTR=ID:soc_stats_fshares_user_query EXTRACT=TXT
TAG POS=1 TYPE=P ATTR=ID:soc_stats_gplus_user_query EXTRACT=TXT
TAG POS=1 TYPE=P ATTR=ID:soc_stats_linkedin_user_query EXTRACT=TXT
TAG POS=1 TYPE=P ATTR=ID:soc_stats_pinterest_user_query EXTRACT=TXT

SET QUITARESPACIOS {{!EXTRACT}}
SET !EXTRACT NULL
SET !VAR1 EVAL(“‘{{QUITARESPACIOS}}’.replace(/\\s/g, ”).replace(/\\./g, ”);”)

SET REEMPLAZAR-COMMA {{!VAR1}}
SET !VAR1 EVAL(“‘{{REEMPLAZAR-COMMA}}’.replace(/,/g, ”)”)

SET REEMPLAZAR-K {{!VAR1}}
SET !VAR1 EVAL(“‘{{REEMPLAZAR-K}}’.replace(/K/g, ‘000’)”)

SET REEMPLAZAR-M {{!VAR1}}
SET !VAR1 EVAL(“‘{{REEMPLAZAR-M}}’.replace(/M/g, ‘000000’)”)

SET REEMPLAZAR-B {{!VAR1}}
SET !VAR1 EVAL(“‘{{REEMPLAZAR-B}}’.replace(/B/g, ‘000000000’)”)

ADD !EXTRACT {{!COL1}}
ADD !EXTRACT {{!VAR1}}
ADD !EXTRACT {{!NOW:dd-mm-yyyy}}

‘SAVEAS TYPE=EXTRACT FOLDER=C:\Users\bromain\Documents\iMacros\Macros\ FILE=Resultats-ahrefs.txt
SAVEAS TYPE=EXTRACT FOLDER=C:\Users\bromain\Documents\iMacros\Macros\ FILE=Resultats-ahrefs.csv

¡Si os gusta este script no duden en compartirlo!