/ / commandline / cron curl Facebook RSS feed - facebook, rss, curl

Feedline / cron curl Facebook RSS feed - facebook, rss, curl

Estoy tratando de configurar un trabajo cron que regularmente publica mi notificación RSS de notificaciones de Facebook y luego dispara el último cambio a mi iPhone como mensaje de inserción usando Prowl.

Ya he manejado una tarea idéntica con un feed RSS del día, sin embargo, mi feed RSS de Facebook siempre 302 me redirige a un "navegador web incompatible". http://www.facebook.com/common/browser.php

$ curl -v http://www.facebook.com/feeds/notifications.php?....
* About to connect() to www.facebook.com port 80 (#0)
*   Trying 69.63.181.11... connected
* Connected to www.facebook.com (69.63.181.11) port 80 (#0)
> GET /feeds/notifications.php?id=... HTTP/1.1
> User-Agent: curl/7.18.2 (x86_64-pc-linux-gnu) libcurl/7.18.2 OpenSSL/0.9.8g zlib/1.2.3.3 libidn/1.10
> Host: www.facebook.com
> Accept: */*
>
< HTTP/1.1 302 Found
< Location: http://www.facebook.com/common/browser.php
< P3P: CP="DSP LAW"

¿Qué necesito agregar a mis parámetros de curl para engañar a Facebook, creo que necesita más que solo un agente de usuario?

Respuestas

6 para la respuesta № 1

Debe pasar un valor apropiado de agente de usuario para engañar a Facebook (por ejemplo, "Mozilla 4") a través de -A Opción, y también instruir. curl seguir redirecciones a través de -L opción:

$ curl -A "Mozilla 4" -L "http://www.facebook.com/feeds/notifications.php?id=..."
<rss version="2.0"
xmlns:media="http://search.yahoo.com/mrss/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
>
...
</rss>