Я использую python feedparser в клиент агрегатора, который работает за прокси-сервером squid. Я хочу, чтобы он отправил заголовок cache-control: max-age = 600
в запросе, чтобы мы получили достаточно актуальный ответ. (В настоящий момент каналы возвращаются прокси-сервером из своего кэша, даже через несколько дней после их изменения, что является разумным основанием для истечения срока действия эвристики, но недостаточно хорошо.)
Похоже, что в feedparser нет прямых API для сделай так что лучший способ? Я действительно не хочу менять источник. Обновление
: есть ошибка, 224 , запрашивающая способ добавить произвольные заголовки с частичными исправлениями, но еще не объединены. Это, наверное, самый чистый способ. В противном случае кажется, что мне нужно monkeypatch либо urllib или feedparser. Ик.
Мне кажется есть два пути:
1- ждать http://code.google.com/p/feedparser/issues/detail?id=224 будет исправлено. Я выложил патч, который позволяет отправлять extra_headers={'Cache-control': 'max-age=0'}
, и посмотрим, примут ли они его.
2-обезьяна вносит исправления в urllib2, чтобы добавить в запрос несколько дополнительных заголовков, что, по-видимому, является единственным ответом без изменения анализатора фида.
Лучшие ответы приветствуются...
обновление 2010-10-29 Патч теперь объединен в основную ветку разработки и ожидает выпуска