2012-05-20 4 views
0

저는 feedparser를 사용하여 원자 피드를 파싱 할 것입니다. 요청할 때 보내진 응답 헤더 키는 date, content-length, content-type, charset, connection, server입니다. 피드의 시작 지점은 다음과 같습니다.응답으로 etag 및 수정 된 헤더없이 피드가 업데이트되었는지 확인하는 방법은 무엇입니까?

<?xml version="1.0" encoding="utf-8"?> 
<feed xmlns="http://www.w3.org/2005/Atom"> 
<title>Hello</title> 
<link href="http://example.com/"/> 
<link rel="self" href="http://example.com/feed"/> 
<link rel="search" type="application/opensearchdescription+xml"    href="http://example/com/search.xml" title="Hello" /> 
<updated>2012-05-20T02:24:56Z</updated> 
<id>abcd/</id> 
<icon>abcd</icon> 
<author><name>abcd</name></author> 

업데이트 된 태그는 피드가 마지막으로 업데이트되었을 때의 값을 갖습니다. feedparser.parse 메소드의 요청 헤더에서이 업데이트 된 값을 보낼 수 있습니까? 그렇다면 어느 헤더가 될까요? 그리고 응답 헤더가 업데이트되었는지 확인하십시오. 이 외에도 피드가 업데이트되었는지 확인하는 다른 방법은 없나요?

답변

2

귀하의 요청에 If-Modified-Since을 설정할 수 있으며 콘텐츠가 업데이트되지 않은 경우 304 Not Modified이 표시됩니다. 200 응답을 얻었지만 내용이 실제로 업데이트되지 않으면 서버가 요청을 존중하지 않았으며 콘텐츠의 날짜 또는 해시를 비교하는 것 외에 다른 작업을 거의 수행 할 수 없습니다.