Facebook FQL límite de transmisión?

Quiero obtener la historia completa de mi muro. Pero parece que llegué a un límite en algún lugar en junio.

Hago varias llamadas como esta:

SELECT created_time,message FROM stream WHERE source_id=MY_USER_ID LIMIT 50 SELECT created_time,message FROM stream WHERE source_id=MY_USER_ID LIMIT 51,100 

y así…

Pero siempre termino en la misma última (primera) publicación en mi muro. A través de facebook.com puedo retroceder mucho más, así que Facebook obviamente tiene los datos.

¿Por qué no estoy recibiendo publicaciones más antiguas? ¿Hay alguna otra manera de raspar mi historia?

    De http://developers.facebook.com/docs/reference/fql/stream :

    La tabla de transmisión está limitada a los últimos 30 días o 50 publicaciones, lo que sea mayor

    Estoy pasando por la misma situación. No lo entiendo del todo, pero parece que el desplazamiento no puede ser mayor que el límite * 1.5

    Teóricamente, esto significa que siempre boost el límite para que coincida con el desplazamiento lo arreglaría, pero no he podido verificar esto (no estoy seguro si los problemas que estoy viendo son otros errores en mi código o si hay otras limitaciones que no entiendo acerca de cómo obtener la transmisión).

    ¿Alguien puede explicar lo que estoy viendo y lo que me falta?

    Puede reproducir mis resultados yendo a la consola de prueba de FQL:

    http://developers.facebook.com/docs/reference/rest/fql.query

    pegar en esta consulta:

     SELECT post_id, created_time, message, likes, comments, attachment, permalink, source_id, actor_id FROM stream WHERE filter_key IN ( SELECT filter_key FROM stream_filter WHERE uid=me() AND type='newsfeed' ) AND is_hidden = 0 limit 100 offset 150 

    Cuando haces clic en “Método de prueba”, verás uno de los 2 resultados que obtengo:

    1. Los resultados vuelven: [{post_id: “926 … (que esperaba)
    2. Devuelve vacío [] (que no esperaba)

    Es probable que necesite experimentar cambiando el valor de “compensación” hasta que encuentre el lugar exacto donde se rompe. Justo ahora descubrí que se rompe para mí en 155 y 156.

    Intenta cambiar tanto el límite como el desplazamiento y verás que los resultados vacíos no ocurren en una ubicación particular en la transmisión. Aquí hay algunos ejemplos de resultados que he visto:

    • “… límite 50 desplazamiento 100” roturas, volviendo vacío []
    • “… límite 100 offset 50” funciona, devolviendo los resultados esperados
    • “… límite 50 offset 74” funciona
    • “… límite 50 desplazamiento 75” roturas
    • “… límite 20 offset 29” funciona
    • “… límites 20 desvíos de 30”

    Además de ver la relación límite = desplazamiento * 1.5, realmente no entiendo qué está pasando aquí.

    Omita la FQL e ir directamente al gráfico. Probé FQL y tenía errores cuando se trataba de límites y obtener rangos de fechas específicos. Aquí está la dirección del gráfico. Ponga en su propia página facebook_id y access_token:

    https://graph.facebook.com/FACEBOOK_ID/posts?access_token=ACCESS_TOKEN

    Luego, si desea que su historial configure su rango de fechas since , until y limit :

    https://graph.facebook.com/FACEBOOK_ID/posts?access_token=ACCESS_TOKEN&since=START_DATE&until=END_DATE&limit=1000

    Esas fechas de inicio y finalización están en tiempo Unix, y utilicé el límite porque si no lo hiciera, solo me daría 25 a la vez. Por último, si desea información para sus publicaciones, deberá ir a cada publicación individual y obtener las estadísticas para esa publicación:

    https://graph.facebook.com/POST_ID/insights?access_token=ACCESS_TOKEN

    No sé por qué, pero cuando uso filter_key = 'others' el LIMIT xx funciona.

    Aquí está mi consulta fql

     SELECT message, attachment, message_tags FROM stream WHERE type = 'xx' AND source_id = xxxx AND is_hidden = 0 AND filter_key = 'others' LIMIT 5 

    y ahora obtengo exactamente 5 publicaciones … cuando utilizo LIMIT 7 obtengo 7 y así sucesivamente.

    Como dijo @Subcreation, algo es wack con FQL en ejecución con LIMIT y OFFSET y las relaciones más altas de LIMIT / OFFSET parecen funcionar mejor.

    He creado un problema en Facebook en http://developers.facebook.com/bugs/303076713093995 . Te sugiero que te suscribas e indiques que puedes reproducirlo para que se active de forma prioritaria.

    En el error describo cómo un flujo simple FQL devuelve conteos de respuesta muy inconsistentes basados ​​en su LIMIT / OFFSET. Por ejemplo:

     433 - LIMIT 500 OFFSET 0 333 - LIMIT 500 OFFSET 100 100 - LIMIT 100 OFFSET 0 0 - LIMIT 100 OFFSET 100 113 - LIMIT 200 OFFSET 100 193 - LIMIT 200 OFFSET 20 

    Obtienes un me gusta máximo de 1000 cuando utilizas LIMIT FQL: SELECCIONAR user_id FROM como WHERE object_id = 10151751324059927 LIMIT 20000000

    Puede especificar created_time para su consulta de Facebook. El campo create_time es tiempo basado en Unix. Puede convertirlo con dicho convertidor http://www.onlineconversion.com/unix_time.htm , o usar los métodos del progtwig depende de su idioma.

    Plantilla basada en su solicitud

     SELECT created_time,message FROM stream WHERE source_id=MY_USER_ID and created_time>BEGIN_OF_RANGE and created_time>END_OF_RANGE LIMIT 50 

    Y ejemplo específico del 20.09.2012 al 20.09.2013

      SELECT created_time,message FROM stream WHERE source_id=MY_USER_ID and created_time>1348099200 and created_time>1379635200 LIMIT 50 

    Tengo un problema similar al intentar descargar publicaciones anteriores de una página pública, agregando un filtro ‘AND created_time

    Creo que esto puede ser un error, porque obviamente si created_time

    Mi sugerencia para usted es filtrar en created_time y cambiarla manualmente cuando deje de obtener resultados.

    Pruébalo con una coma:

    SELECT post_id, created_time, message, likes, comments, attachment, permalink, source_id, actor_id FROM stream WHERE filter_key IN (SELECT filter_key FROM stream_filter WHERE uid=me() AND type='newsfeed') AND is_hidden = 0 limit 11,5