2013-10-11 3 views
6

Ich habe meinen Kopf seit Tagen auf diesen Kopf geschlagen und versucht herauszufinden, wie dies möglich ist. Ich möchte die CSVs von Google Webmaster Tools herunterladen, die ich erfolgreich gemacht habe. Ich muss jedoch den Benutzernamen und das Passwort des Kontos, auf das ich zugreifen möchte, direkt weitergeben. Für alle anderen Aspekte der Webmaster-Tools habe ich einfach den Benutzer-Login und ich tausche das Token von dort mit einem wiederverwendbaren Session-Token aus.Java google webmaster top Abfragen

Ich kann nicht scheinen, diese Methode zu verwenden, wenn es darum geht, die Abfragedaten zu erhalten.

Auf Ihrer Erfassungsseite (der nächste Parameter im obigen Code) erhalten Sie das Token nach erfolgreicher Anmeldung. Dann tauschen Sie es gegen das Sitzungstoken aus.

String token = "##########################"; 
String sessionToken = AuthSubUtil.exchangeForSessionToken(token, null); 
//store sessionToken for all future use to interact with webmaster for this user. 

Dann endlich wir einfach WebmasterToolsService Objekt erstellen und es AuthSubToken auf die Session-Token ist, und FERTIG!

WebmasterToolsService myService = new WebmasterToolsService("DemoWebmaster"); 
myService.setAuthSubToken(token); 

Wenn ich jedoch versuche, die CSV-Datei herunterzuladen, habe ich keine andere Wahl, als die vollständigen Anmeldeinformationen des Google-Benutzers zu verwenden.

String host = "www.google.com"; 
String dl_list_url = "/webmasters/tools/downloads-list?hl=%s&siteUrl=%s"; 
String sites_path = "/webmasters/tools/feeds/sites/"; 
WebmasterToolsService svc = new WebmasterToolsService("DemoQuery Service"); 
svc.setUserCredentials("[email protected]", "123456"); 

Danach kann ich alles mit der Webmaster-API tun, da ich den vollen Client-Login übergebe. Für die Anwendung, die ich erstelle, muss ich jedoch nicht die vollständigen Google-Anmeldeinformationen der Nutzer speichern.

Ich habe eine Firma gesehen, die es geschafft hat, das irgendwie zu entfernen, wenn Sie die Google Webmaster API hinzufügen. Aber ich kann nicht sehen, wie es möglich ist. Irgendwelche Ideen?

Antwort

1

Über diese Firma, die es macht, wer sind sie, geben sie irgendeine Art von öffentlichem Werkzeug oder Mashup? Wahrscheinlich verwenden sie nur einen unfairen Trick, um Ihre Daten zu behalten. Hast du eine URL?

Soweit ich weiß (und ich wusste, eine weitere Forschung nur für den Fall), ist das nicht möglich. für ein paar Dinge:

  1. Wie Sie sagen, google's example in python verwendet Benutzername und Passwort.
  2. eyecatchup php-webmaster-tools-downloads library, erfordert auch Benutzername und Passwort.
  3. Wenn Sie die Google APIs-Konsole aufrufen (https://code.google.com/apis/console oder https://cloud.google.com/console), ist die Webmaster-Tools-API nicht vorhanden. Es scheint also nicht so zu sein, das allgemeine Berechtigungssystem wie alle anderen APIs zu verwenden.

Also, ich fürchte, Sie werden nicht glücklich sein.

Verwandte Themen