2010-04-14 9 views
8

Sto cercando di trovare un API/programma/interfaccia per ottenere le seguenti informazioni.google search classifiche e tendenze api

  1. un termine (s) popolarità globale - ala GOOGLE trends
  2. come un sito web si presenta rango saggio di detto termine (s) - ala googlesearchpositionfinder e come molti siti web hanno il termine (s) - di serie google, ad es Ricerca di foobar e il dizionario urbano si presenta in posizione 5 di 9.000.000

Mi piacerebbe vedere la quantità di volte è stato utilizzato un particolare termine di ricerca e la sua ripartizione/settimanale/mensile/annuale popolarità con il suo rango in un pagina particolare.

Ho trovato googlesearchpositionfinder.com e google.com/trends ma non ho ancora 5000 termini da cercare a mano. Ho anche trovato www.juiceanalytics.com/openjuice/programmatic-google-trends-api ma non mi permette di fare un breakdown per un periodo di 2 anni.

Fondamentalmente sto cercando di creare una classifica delle frasi di ricerca, le settimane (periodo) erano più popolari e di come un particolare sito (per esempio dizionario urbano) è apparso nelle classifiche di ricerca googles per i termini. Vedi sopra (1-2)

Anche questo non deve essere in Python questo è proprio quello che ho trovato per costruire con ...

Ultima modifica: entrambe le risposte di seguito aiutato.

Ho finito per usare curl contro google direttamente e quindi analizzare i risultati con un programma C#.

risposta

5

Le tendenze di Google non consentono una ricerca su un intervallo di due anni, ma un anno alla volta.
Utilizzando pyGTrends.py si potrebbe fare:

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')) 

allora si potrebbe unire esportazione1 e Export2 base alle proprie esigenze.

O ancora meglio

Si potrebbe scaricare il rapporto senza filtro data e fare il lavoro sporco con Python.
Dai uno sguardo al seguente script, organizza date_MIN \ date_MAX come ti serve.

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

Grazie almeno siamo nella stessa pagina, lo sto facendo ma voglio fare una granularità più fine e sto cercando di capire se c'è un modo per fare un intervallo di date. In questo momento sono costretto a unirmi a un paio di mesi insieme. Ho anche guardato approfondimenti in quanto sembra simile alle tendenze di google con maggiore controllo ... ma non ho ancora avuto il coraggio di sputare le informazioni giuste ... – Drakkhen

+0

@Drakkhen Aggiornato, funziona per me. – systempuntoout

+0

Grazie per quello, l'ho usato e ho ottenuto un po 'di più, ma ancora cercando di ottenere la prima parte che è quanto vicino alla cima delle ricerche di google appare una pagina – Drakkhen