Hat jemand Erfahrung mit der Google Books API?

Shadow1701

Ensign
Registriert
Juli 2012
Beiträge
239
Schönen Abend :)

mit einem PHP script suche ich nach Büchern. Was grundsätzlich auch funktioniert.

Google beschränkt die Suchergebnisse auf maximal 40 Stück. Ich führe also eine Suche aus, mit den Parametern

Code:
'startIndex' => 0,
'maxResults' => 40

Jetzt bekomme ich 40 Ergebnisse mit "totalItems" 47. Es fehlen mir also noch 7 Ergebnisse. Also lautete die zweite Abfrage:

Code:
'startIndex' => 1,
'maxResults' => 40

Die gibt jetzt aber nicht die restlichen 7 Ergebnisse aus sondern eine Liste mit Büchern die mit den Suchwörter so gut wie nichts zu tun haben und die "totalItems" sind plötzlich 24. Wenn die "totalItems" 47 sind oder 7 könnte ich es nachvollziehen. So aber verstehe ich das nicht.

ich habe es auch mit "maxResults" 11 versucht, mit das Suchergebniss 11 angesehen und dann eine Abfrage mit
Code:
'startIndex' => 1,
'maxResults' => 10
durchgeführt, hier sollte eigendlich das erste Suchergebnis der Seite zwei gleich sein mit dem Suchergebnis 11 der vorherigen Abfrage. Ist es aber nicht, es kommt etwas völlig anderes heraus.

API Key habe ich.
Warum funktioniert das Blättern in den Suchergebnissen nicht?

Hat da jemand von euch Erfahrungen?
 
Wieso denn Startindex 1, sollte der nicht 40 sein?
 
  • Gefällt mir
Reaktionen: Shadow1701 und tollertyp
Uh, Seiten? Sicher?
Aus der API spec:
startIndex: die Position in der Sammlung, an der der Ausgangspunkt beginnen soll. Der Index des ersten Elements ist 0.
maxResults: Die maximale Anzahl der Ergebnisse, die zurückgegeben werden sollen. Der Standardwert ist 10 und der maximal zulässige Wert ist 40.

Das hört sich für mich immernoch nach Index an, also Anzahl der Werke und nicht Anzahl der Seiten über Werke
 
  • Gefällt mir
Reaktionen: Shadow1701 und tollertyp
Sehe auch nichts, was aussagt, dass 1 = Seite 2 sein soll...
1707070585281.png

Ergänzung ()

Wäre auch nicht verkehrt einfach mal Beispiele der Antworten zeigen mit
startIndex=0
maxResults=2

und startIndex=1
maxResults=2
 
  • Gefällt mir
Reaktionen: Shadow1701 und Tornhoof
Ich habt natürlich recht, aber es gab noch ein anderes Problem. Mein Such query, bestehend aus drei Wörtern, stand noch in Anführungsstriche, diese mussten weg weil es irgendwie die Suchergebnisse beeinflusst hat. Ohne Anführungsstriche funktioniert das.

Ich habe es jetzt auf 5 Ergebnisse pro Seite beschränkt.

Seite 1:
Code:
'maxResults' => 5,
 'startIndex' => 0,

Seite 2:
Code:
'maxResults' => 5,
'startIndex' => 5,

Damit habe ich jetzt auf zwei Seiten die gleichen Suchergebnisse wie mit einer Seite:
Code:
'maxResults' => 10,
'startIndex' => 0,

Wie so oft, hätte ich das früher herausfinden können :(

Ich danke euch und wünsche euch einen schönen Abend.

edit: die "totalItems" springen zwar immer noch herum wie der Schwanz eines glücklichen Hundes aber das ist egal, die letzte Seite finde ich auch indem ich nachschaue ob noch Bücher aufgelistet werden....
 
  • Gefällt mir
Reaktionen: floq0r und tollertyp
Zurück
Oben