命令行/ cron curl Facebook RSS feed [英] commandline / cron curl Facebook RSS feed
问题描述
我试图设置一个定时任务,定期限制我的Facebook通知RSS源,然后关闭最新的变化,我的iPhone作为推送消息使用Prowl。
I'm trying to setup a cron job which regularly poles my Facebook notification RSS feed and then fires off the latest change to my iPhone as push message using Prowl.
我已经管理一个相同的任务与报价的RSS feed,但我的Facebook RSS feed总是302重定向到一个不兼容的网络浏览器。
http://www.facebook.com/common/browser.php
I've already managed an identical task with a quote-of-the-day RSS feed, however my Facebook RSS feed always 302 redirects me to a "incompatible web browser." 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"
我需要添加到我的curl参数, ,我认为它只需要更多的只是一个用户代理?
What do I need to add to my curl parameters to fool Facebook, I think it needs more that just a user-agent?
推荐答案
您需要传递一个适当的用户代理值到傻瓜通过 -A
选项选择Facebook(例如Mozilla 4),并指示 curl
code> -L 选项:
You need to pass an appropriate user-agent value to fool Facebook (e.g. "Mozilla 4") via the -A
option, and also instruct curl
to follow redirects via the -L
option:
$ 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>
这篇关于命令行/ cron curl Facebook RSS feed的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!