2010-04-14 8 views
8

Estoy buscando una API/programa/interfaz para obtener la siguiente información.rankings y tendencias de búsqueda de Google api

  1. un término (s) popularidad global - Ala Google Trends
  2. cómo un sitio web aparece rango sabio en para dicho término (s) - Ala sitios web googlesearchpositionfinder y cuántos tienen el término (s) - norma Google, por ejemplo La búsqueda de foobar y el diccionario urbano aparece en la posición 5 de 9.000.000

Me gustaría ver la cantidad de veces que se utiliza un término de búsqueda en particular y su desglose de popularidad/semanal/mensual/anual, junto con su rango en una página particular.

He encontrado googlesearchpositionfinder.com y google.com/trends pero tengo 5000 términos para buscar a mano y no está sucediendo. También encontré www.juiceanalytics.com/openjuice/programmatic-google-trends-api pero no me permite hacer un desglose por un período de 2 años.

Básicamente estoy tratando de crear una clasificación de frases de búsqueda, las semanas fueron más populares y cómo un sitio en particular (por ejemplo, un diccionario urbano) apareció en los rankings de búsqueda de googles para los términos. Ver más arriba (1-2)

También este no tiene que estar en pitón esto es sólo lo que he encontrado para construir con ...

Última edición: Ambas respuestas a continuación ayudado.

Terminé usando curl contra google directamente y luego analizando los resultados con un programa C#.

Respuesta

5

Google trends no permite una búsqueda en un rango de dos años, sino de un año cada vez.
Usando pyGTrends.py que podría hacer:

from import pyGTrends 
from csv import DictReader 
r = pyGTrends(username, password) 
r.download_report(('stackoverflow'), date='2009') 
export1 = DictReader(r.csv().split('\n')) 
r.download_report(('stackoverflow'), date='2010') 
export2 = DictReader(r.csv().split('\n')) 

entonces usted podría unirse a Export1 y Export2 para satisfacer sus necesidades.

o incluso mejor

Se puede descargar el informe sin filtro de fecha y hacer el trabajo sucio con Python.
Eche un vistazo a la siguiente secuencia de comandos, arregle date_MIN \ date_MAX según lo necesite.

from pyGTrends import pyGTrends 
import csv 
import datetime 
date_MIN ='2007/01/01' 
date_MAX ='2009/03/01' 
r = pyGTrends('username','password') 
r.download_report(('stackoverflow')) 
csv_reader = csv.reader(r.csv().split('\n')) 
with open('gtrends_report.csv', 'w') as csv_out: 
    csv_writer = csv.writer(csv_out) 
    for count,row in enumerate(csv_reader): 
     if count == 0: 
      csv_writer.writerow(row) 
     else: 
      date = datetime.datetime.strptime(row[0], "%b %d %Y") 
      if datetime.datetime.strptime(date_MIN, "%Y/%m/%d") <= date <= datetime.datetime.strptime(date_MAX, "%Y/%m/%d"): 
       csv_writer.writerow(row) 
+0

Gracias al menos estamos en la misma página, he estado haciendo eso, pero quiero hacer una granularidad más fina y estoy buscando para ver si hay una manera de hacer un rango de fechas. En este momento me veo obligado a unirme a un montón de meses juntos. También he estado buscando ideas, ya que se parece a las tendencias de Google con más control ... pero todavía no lo escupió la información correcta ... – Drakkhen

+0

@Drakkhen Actualizado, funciona para mí. – systempuntoout

+0

gracias por eso, lo he usado y he ido un poco más lejos, pero todavía estoy tratando de obtener la primera parte, que es lo cerca que está de la parte superior de las búsquedas de Google una página aparece – Drakkhen

Cuestiones relacionadas