spreadsheets sheets sheet hoja google funcion caracteristicas calculo google-spreadsheet instagram

google spreadsheet - sheets - ¿Raspado de datos de Instagram usando la hoja de cálculo de Google?



sheet google doc (1)

Esta fórmula va a parecer muy complicada, pero realmente todo lo que es, es una fórmula importxml para extraer los datos de la sección "script" que tiene las piezas que desea ... y luego usa un montón de funciones de regexreplace / extract que limpio los datos en un formato legible:

tome esta página pública, por ejemplo: http://www.instagram.com/salesforce/

Luego, en B1 o C1, ingrese esto:

=iferror(arrayformula(regexreplace({arrayformula(regexextract(transpose(split(regexreplace(regexreplace(concatenate(IMPORTXML(Sheet2!A1,"//script")),"/n",""),"(^.*""ProfilePage"": /[{""user"": {""username"": "")(.*)(nodes.*)","$2"),", """,false)),"(^.*)"": .*")),arrayformula(regexextract(transpose(split(regexreplace(regexreplace(concatenate(IMPORTXML(Sheet2!A1,"//script")),"/n",""),"(^.*""ProfilePage"": /[{""user"": {""username"": "")(.*)(nodes.*)","$2"),", """,false)),"^.*"": (.*)"))},"[""}{]","")))

Terminé usando una matriz literal para poder dividir efectivamente los nombres de campo de los valores, obviamente puedes formatear como quieras, pero mira la imagen que muestra los campos que extrae:

También tenga en cuenta que los seguidores, follow_by y media: count son los campos que usted mencionó (por ejemplo, # de publicaciones se llama conteo de medios) y luego la biografía del curso se explica por sí misma.

Actualización: En respuesta a su comentario: si desea obtener los otros 2 valores, puede hacerlo en una única función de expresión regex como esta:

Si usa los datos de importación sin procesar estas expresiones regulares funcionan:

Recuento de medios:

=REGEXEXTRACT(concatenate(IMPORTDATA(E1)),"""media: {""count"": (/d+)page_info: {")

Biografía:

=REGEXEXTRACT(concatenate(IMPORTDATA(E1)),"biography: ""(.*)""full_name")

Si usa el método importxml, estos funcionan:

=REGEXEXTRACT(A1,"biography"": ""(.*)"", "".*""media"": {""count"": (/d+), ""page_info""")

Eso crea 2 grupos de captura que los colocan automáticamente en sus propias celdas adyacentes, o puedes hacerlos individualmente, que es:

y para la biografía:

=REGEXEXTRACT(A1,"biography"": ""(.*)"", "".*""media")

recuento de medios:

=REGEXEXTRACT(A1,"media"": {""count"": (/d+), ""page_info""")

Necesito datos como bio y número de publicaciones de la cuenta pública de Instagram con la hoja de cálculo de google. Puedo extraer el número de seguidores y siguientes. Puede usted ayudar ?