2009-03-31 2 views
4

feedparser 또는 다른 Python 라이브러리를 사용하여 RSS 피드를 다운로드하고 구문 분석합니다. new 개의 항목과 modified 개의 항목을 안정적으로 검색하려면 어떻게해야합니까?RSS 피드에서 변경된 항목과 새 항목을 감지하는 방법은 무엇입니까?

지금까지 최신 항목보다 먼저 발행 날짜가있는 피드에 새 항목이 있습니다. 또한 별도의 항목으로 약간 다른 콘텐츠로 게시 된 동일한 항목을 표시하는 피드 리더를 보았습니다. 피드 리더 애플리케이션을 구현하지 않고 피드 데이터를 보관하기위한 단순한 전략을 원합니다.

답변

5

피드 소스를 얼마나 신뢰할 수 있는지에 따라 다릅니다. 피드 파서는 피드 항목에 .id 속성을 제공합니다.이 속성은 RSS 및 ATOM 소스 모두에 대해 고유해야합니다. 예를 들어, 피드 파서의 ATOM docs을 참조하십시오. .id가 대부분의 경우를 다루지 만, 소스가 동일한 ID를 가진 여러 항목을 게시 할 수도 있습니다. 이 경우 항목의 콘텐츠를 해시 할 수밖에 없습니다.

+0

내 경우에는 내용을 해싱 할 수 있습니다. item.title & item.content로 충분합니까? 아마도 – muhuk

+0

. 내가 따라하는 일부 피드는 내용을 변경하지 않고 동일한 항목의 제목을 변경합니다. 이 경우 콘텐츠로 해싱하는 것만 신경 씁니다. 그것은 각 항목에 대해 '근본적인'것이라고 생각하는 것에 달려 있습니다. –

+0

어쨌든 해결책은 수신 측의 모든 "이전"데이터를 추적하는 것입니다. 맞습니까? 이미 처리 한 ID 또는 이미 처리 한 항목의 해시 값을 추적합니다. RSS 피드의 모든 항목을 확인하거나 피드의 타임 스탬프를 신뢰하지 않고 새로운 항목을 식별 할 수있는 방법은 없습니다. –

관련 문제