Pergunta

ao ler meu feed RSS com leitor de feeds Thunderbird, algumas entradas são duplicados. Google leitor não tem o mesmo problema.

Aqui é a alimentação com defeito http://plcoder.net/rss.php?rss=Blog

Há um problema, mas onde?

Saudações, Cédric

update: eu adicionar guid mas o problema permanece. não anothers feeds não duplicar como o meu, por isso vou voltar a trabalhar neste módulo e substituir este código antigo bom.

conclusão: eu re-trabalho completamente o código do gerador de RSS, e ok é. Acho que eu estava usando uma versão muito antiga do RDF.

Foi útil?

Solução

Tente adicionar um tag <guid> a cada item, dando-lhe um permalink. ou seja:.

<item rdf:about="http://plcoder.net/?doc=2134&amp;amp;titre=mon-pc-se-la-pete">
  <link>http://plcoder.net/?doc=2134&amp;amp;titre=mon-pc-se-la-pete</link>
  <guid>http://plcoder.net/?doc=2134&amp;amp;titre=mon-pc-se-la-pete</guid>
  ...
</item>

Sem um GUID, se qualquer parte do conteúdo nas pós mudanças, seu agregador RSS poderia pensar que ele é um novo post. Com o GUID, mesmo que o conteúdo de que as mudanças de itens, seu agregador RSS deve apenas atualizar o post, em vez de tratá-lo como um novo item.

Outras dicas

Pelo menos com Thunderbird 2.0.0.21 o problema é que TBird não parece respeitar GUID-tags mas faz respeitar a do canal pubDate-tag. Assim, se pubDate é mais recente do que com última leitura, TBird lerá todas entradas (ao que parece).

Eu não sei o que aconteceria se pubDate-tag do canal está faltando embora ...

Eu experimentei este problemas com alguns dos meus próprios feeds. O que aconteceu é que eu começar com uma lista de entradas como esta:

Item A
Item B
Item C

O cliente faz o download deles e está tudo bem. Então eu adicionar um novo item, de modo que o alimento lê como:

Item D
Item A
Item B

D mostra-se o leitor.

Mas então eu decidir que não quero esse item, assim que a lista reverte para:

Item A
Item B
Item C

Quando Thunderbird lê isso, ele vai contar C como um novo item. I am usando um elemento GUID, por isso duvido que é o problema. Eu acho que tem mais a ver com analisador de Thunderbird não tomar elementos mais velhos em consideração.

A solução prolixo é "lembrar" os itens que você já publicados e, desde então, sido empurrado para fora da extremidade da lista de novos itens. Basicamente, você vai precisar para manter uma lista atual de itens na alimentação e quando você itens DELETE FROM-lo, cortá-lo curto até que haja novos itens para substituí-lo.

Isto é explicado em documentação Thunderbird (em "Solução de problemas FAQ"):

Q: mensagens Por que alimentam às vezes duplicado

: Alimente mensagens com conteúdo idêntico, mas diferentes ids únicos são não detectado como duplicados. Consulte este post para muitos mais detalhes.

O post ligado para referência:

  1. alimentações Atom (obrigatório) tem uma identificação única; rss feeds (não obrigatório) geralmente têm um GUID exclusivo. Para feeds RSS sem um guid, uma tentativa é feito para criar uma identificação única a partir de peças obrigatórias do item alimentação.
  2. Todos baixado mensagens de alimentação tem um registro com este id armazenado em feeditems.rdf e existe há tanto tempo quanto eles existem nos do editor apresentar, com essa id. Se o editor remove uma mensagem com o ID a partir de seu arquivo, depois de 24 horas o cache feeditems.rdf também é purgado (Em mensagens são Biff).
  3. Se um editor reutiliza um id depois de ter sido purgado, você receberá um joguete (se o conteúdo é idêntico). Isso é um abuso da intenção por trás ids únicos e de erro do editor.
  4. Se um editor reutiliza um id antes de ser purgado, eo conteúdo é diferente, você não verá o novo conteúdo, como ele vai ser tratado como uma duplicada. O Thunderbird não usar a tag atualmente e seu uso indevido por editores podem torná-lo difícil de implementar.
  5. Se você ver a fonte (Ctrl-U) de dois tolos aparentes, você vai notar o cabeçalho Message-Id. Se dois tolos aparentes têm diferentes Message-Id valoriza, então eles não são bobos, independentemente do potencial conteúdo idêntico. não Tb não distingue conteúdo duplicado.

Se você quiser extrema depuração, altere o pref Feeds.logging.console a depuração ou rastreamento e reiniciar, para ver o que acontece durante a alimentação processamento.

Se você anular a URL do feed, isso vai limpar o cache feeditems.rdf para que a ração. Se, posteriormente, resubscribe você receberá dupes de todos os itens atuais no arquivo do autor que também existem no seu feed pasta.

A compactação não tem efeito sobre processamento de alimentos, ele apenas remove marcada para itens de exclusão do arquivo. Se você excluir uma pasta / movê-lo para lixo, é retirado. Começando com Tb29, se você arrastar / soltar um pasta de um acount de alimentação para outra conta de alimentação, a subscrição é retida (mas não feeditems). Para contas muito antigas perfis / alimentação (Pré Tb17), pode ser uma boa idéia para criar uma nova conta de alimentos para animais e pastas arrastar lá (Tb29 e acima), como um banco de dados fresco feeds.rdf é criada; a pena é um joguete possibilidade uma vez.

Eu tive o mesmo problema ... eu mudei para alimentação do Google e agora é fixo, não sabia a causa exata embora

http://feedproxy.google.com/juanformoso

Thunderbird tem alguns bugs com a duplicação de entradas de feed, talvez seja apenas um deles aparecendo?

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top