Contar artículos por rango de tiempo para líneas de tiempo
Cree recuentos agrupados similares a histogramas para crear líneas de tiempo y gráficos de distribución
Parámetros de entrada
| Parámetro | Descripción | Tipo | Predeterminado | Requerido |
|---|---|---|---|---|
| facet.range | Contar artículos por rango (establecer en true o 1). | boolean | Sí | |
| facet.range.field | Campo para crear rangos. | string | Sí | |
| facet.range.start | Valor inicial para el rango. | string | Sí | |
| facet.range.end | Valor final para el rango. | string | Sí | |
| facet.range.gap | Brecha/intervalo entre rangos (e.g., 1WEEK, 1DAY). | string | 1DAY | No |
| api_key | Tu clave API | string | Sí | |
| per_page | Número máximo de artículos a recuperar | integer | 20 | No |
Ejemplos de flujo de trabajo
Agrupa los artículos por semana y cuéntalos:
curl -X GET "https://api.apitube.io/v1/news/everything?title=bitcoin&facet.range=true&facet.range.field=published_at&facet.range.start=2024-01-01&facet.range.end=2024-03-01&facet.range.gap=1WEEK&api_key=YOUR_API_KEY"
Vea cuántos artículos son positivos, negativos o neutrales:
curl -X GET "https://api.apitube.io/v1/news/everything?organization.name=Apple&facet.range=true&facet.range.field=sentiment.overall.score&facet.range.start=-1&facet.range.end=1&facet.range.gap=0.25&api_key=YOUR_API_KEY"
Distribución del tiempo de lectura:
curl -X GET "https://api.apitube.io/v1/news/everything?category.id=medtop:04000000&facet.range=true&facet.range.field=read_time&facet.range.start=0&facet.range.end=30&facet.range.gap=5&api_key=YOUR_API_KEY"
Ejemplos relacionados
- Obtén recuentos de artículos por campo para análisis
- Obtenga artículos largos
- Seleccionar campos específicos
- Obtener noticias ordenadas por fecha
- Obtener noticias en un rango de tiempo específico
Receta para cURL
curl --location --globoff --request POST 'https://api.apitube.io/v1/news/everything?facet.range=1&facet.range.field=published_at&facet.range.start=2024-01-01&facet.range.end=2024-03-01&facet.range.gap=1WEEK&api_key=YOUR_API_KEY&per_page=10' \
--header 'Content-Type: application/json'
Receta para Python
import requests
url = "https://api.apitube.io/v1/news/everything"
querystring = {
"facet.range": true,
"facet.range.field": "published_at",
"facet.range.start": "2024-01-01",
"facet.range.end": "2024-03-01",
"facet.range.gap": "1WEEK",
"api_key": "YOUR_API_KEY",
"per_page": 10
}
response = requests.request("GET", url, params=querystring)
print(response.text)
Receta para Javascript
import axios from "axios"
const options = {
method: 'GET',
url: 'https://api.apitube.io/v1/news/everything',
params: {
"facet.range": true,
"facet.range.field": "published_at",
"facet.range.start": "2024-01-01",
"facet.range.end": "2024-03-01",
"facet.range.gap": "1WEEK",
"api_key": "YOUR_API_KEY",
"per_page": 10
}};
axios.request(options).then(function (response) {
console.log(response.data);
}).catch(function (error) {
console.error(error);
});
Receta para PHP
require 'vendor/autoload.php';
use GuzzleHttp\Client;
$client = new Client();
$response = $client->request('GET', 'https://api.apitube.io/v1/news/everything', [
'query' => [
'facet.range' => 1,
'facet.range.field' => 'published_at',
'facet.range.start' => '2024-01-01',
'facet.range.end' => '2024-03-01',
'facet.range.gap' => '1WEEK',
'api_key' => 'YOUR_API_KEY',
'per_page' => 10,
],
]);
echo $response->getBody();
Receta para Java
OkHttpClient client = new OkHttpClient().newBuilder().build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "");
Request request = new Request.Builder()
.url("https://api.apitube.io/v1/news/everything?facet.range=1&facet.range.field=published_at&facet.range.start=2024-01-01&facet.range.end=2024-03-01&facet.range.gap=1WEEK&api_key=YOUR_API_KEY&per_page=10")
.method("POST", body)
.addHeader("Content-Type", "application/json")
.build();
Response response = client.newCall(request).execute();