web-scraping - node - web scraping jquery
Obtención de datos reddit (3)
Para analizar los datos JSON de reddit con ajax / javascript .
Reddit tiene CORS habilitado para las solicitudes GET.
Aquí como ejemplo, analice los últimos videos de reddit en formato JSON:
xhr = new XMLHttpRequest
xhr.open("GET","https://www.reddit.com/r/videos/.json",true)
xhr.send(null)
xhr.onreadystatechange = function() {
if(this.status === 200) {
console.log(JSON.parse(xhr.responseText))
}
}
https://developer.mozilla.org/fr/docs/Web/API/XMLHttpRequest
Para profundizar, mira esta pregunta:
Estoy interesado en obtener datos de diferentes subreddits reddit. ¿Alguien sabe si hay una reddit / otra api similar a la que Twitter hace para rastrear todas las páginas?
Sí, reddit tiene una API que se puede usar para una variedad de propósitos, como la recopilación de datos, los robots de comentarios automáticos o incluso para ayudar en la moderación de subreddit.
Hay algunos lugares para descubrir información sobre la API de reddit:
- github reddit wiki : proporciona la descripción general y las reglas para usar la API de reddit (siga las reglas)
- documentos API generados automáticamente : proporciona información sobre las solicitudes necesarias para acceder a la mayoría de los puntos finales API
- /r/redditdev : la comunidad de reddit dedicada a responder preguntas sobre el código fuente de reddit y sobre la API de reddit
Si hay un lenguaje de programación en particular con el que ya está familiarizado, debe revisar el conjunto existente de envoltorios de API para varios idiomas. A pesar de mi sesgo (soy el mantenedor del paquete), estoy bastante seguro de que PRAW , para python, tiene soporte para el mayor número de funciones de API de reddit.
Tenga en cuenta que si solo está leyendo datos y no está interesado en volver a publicar en reddit, puede obtener un poco de datos de las fuentes json asociadas con cada subreddit. Con este método, no necesita preocuparse por una API en absoluto, simplemente solicite el archivo json relevante y lo analice en el idioma de su elección.
Aquí hay una URL de ejemplo que devolverá un objeto json que contiene las publicaciones más recientes de Justrolledintotheshop subreddit: https://www.reddit.com/r/Justrolledintotheshop/top.json
En lugar de la parte superior, puede utilizar hot
, new
o controversial
. Al usar top, puedes agregar ?t=day
al final de la url para especificar la publicación superior del día. Otros valores válidos son hour
, day
, week
, month
, year
o all
.