Nota: consulta una comparación de métodos, exportación a CSV y más código en la guía de datos históricos de Twitter.
Endpoints
/search-tweets admite los operadores de X, incluidos since:, until:, from:, to:, min_faves:, min_retweets:, lang: y filter:, dentro de query. /user-tweets acepta un identificador (user_link, username o user_id) y devuelve la cronología sin filtros de consulta.
Búsqueda histórica por palabras clave
Utiliza/search-tweets para buscar publicaciones de cualquier usuario que coincidan con una consulta en un intervalo. Envía la consulta con las fechas en el cuerpo JSON:
order acepta "latest" (orden cronológico) o "popular" (por interacción). Para recopilar un intervalo histórico utiliza "latest"; para investigar contenido, "popular" muestra primero las publicaciones con más interacción.
Cronología completa de una cuenta
Utiliza/user-tweets para obtener el historial de una cuenta de más reciente a más antiguo, sin un límite de 3.200 publicaciones.
user_link, username o user_id. Recorre las páginas con next_cursor hasta que sea nulo. El orden es cronológico inverso.
Para un intervalo de fechas de una cuenta, utiliza /search-tweets con from:, por ejemplo from:naval since:2020-01-01 until:2021-01-01. /user-tweets no admite filtros de fecha.
Datos que puedes recuperar
Las publicaciones históricas incluyen los mismos campos que las recientes:- Texto completo, sin recortes ni sustitución de URL.
- Las seis métricas:
likes_count,retweet_count,reply_count,quote_count,view_countybookmark_count. - Objeto
usercon el perfil completo del autor. - Array
entitiescon URL multimedia (fotos, vídeos y GIF) y vistas previas de enlaces. - Metadatos de conversación:
conversation_id_str,in_reply_to_tweet_id,is_replyeis_quote_status. - Código de idioma:
lang.
Limitaciones de la plataforma
Son restricciones de X, no específicas de Sorsa. Ninguna API pública puede evitarlas.- Las publicaciones eliminadas desaparecen del índice de búsqueda y no se pueden recuperar.
- Las cuentas protegidas se excluyen de búsquedas y cronologías públicas.
- Los perfiles no son históricos. Una publicación de 2014 devuelve la biografía, el nombre y los seguidores actuales de su autor, no los de 2014.
- Las métricas no son instantáneas históricas. Los contadores de Me gusta, retuits y visualizaciones reflejan los totales actuales. Si necesitas valores de una fecha concreta, recopila y guarda las métricas mediante Supervisión en tiempo real.
Buenas prácticas
Divide los intervalos grandes
Una consulta que cubre varios años dificulta los reintentos y la auditoría por periodos. Divide por meses las recopilaciones anuales y por semanas los acontecimientos de gran actividad.Reduce el ruido de los retuits
Las búsquedas históricas populares pueden incluir oleadas de retuits nativos que ocultan el contenido original. Añade-filter:nativeretweets para investigar sentimiento, opiniones o patrones de contenido. Utiliza -filter:retweets para excluir también los retuits antiguos con RT @user:.
Combina interacción y fechas
Combinarsince: y until: con min_faves: o min_retweets: reduce el ruido y las solicitudes. Ejemplo:
Divide los temas globales por idioma
En acontecimientos mundiales, las consultas separadas porlang: generan conjuntos más claros por idioma que las consultas mezcladas.
Continúa hasta agotar el cursor
Detente solo cuandonext_cursor sea nulo, vacío o no aparezca. No termines porque una página tenga pocos resultados. Consulta Paginación.
Guías relacionadas
- Búsqueda de publicaciones: referencia de
/search-tweets. - Operadores de búsqueda: diccionario completo.
- Paginación: cursores.
- Supervisión en tiempo real: combina la recuperación histórica con nuevas publicaciones.
- Seguimiento de menciones: menciones históricas de cuentas.
- Optimización del uso de la API: reduce solicitudes en recopilaciones grandes.