2017-02-22 6 views
25

공개 리뷰 RSS 피드를 통해 iTunes App Store에서 특정 앱에 대한 리뷰를 가져 오려고합니다. 대부분 피드는 페이지 당 50 개의 리뷰 목록을 반환하며 최대 10 개의 페이지에 대한 링크를 제공합니다. 그러나 일부 앱의 경우 일부 또는 모든 페이지의 리뷰가 0 개이므로 그 이유를 알 수 없습니다.iTunes Store Reviews RSS 피드가 때로는 결과를 반환하지 않는 이유는 무엇입니까?

이 글을 쓰고있는 시점에서 Instagram의 피드 (아래 링크)는 리뷰가 10 개가 있음에도 불구하고 리뷰를 반환하지 않습니다.

https://itunes.apple.com/us/rss/customerreviews/page=1/id=389801252/sortBy=mostrecent/xml

더욱 혼란, 그 2 페이지 50 개 리뷰했다 지난 밤에 발견하지만, 다른 페이지의 어느 것도 없었다. 오늘 아침, 2 페이지가 다시 비어 있습니다.

위 URL의 sortBy=mostrecent 부분을 제거하면 실제로 결과는 50 개가되지만 다른 페이지에는 결과가 없습니다.

마지막으로이 페이지의 JSON 버전 (아래 링크)이 실제로 XML 버전보다 더 나은 결과를 반환하는 것처럼 보입니다. 불행히도 JSON 버전은 데이터 검토시 사용하지 않으므로 사용할 수 없습니다.

https://itunes.apple.com/us/rss/customerreviews/page=1/id=389801252/sortBy=mostrecent/json

사람이를 설명 할 수 있습니까? Apple의 XML 피드 API는 매우 신뢰할 만합니까? 나쁜 URL을 형성하고 있습니까?

+0

애플의 XML 피드 API에 대해 당신이 맞다고 생각합니다. 원한다면 Apple의 iTunes Feed에서 특정 데이터를 얻으려면 페이지 결과를 확인하는 방법에 대해 [my answer] (http://stackoverflow.com/a/40383107/4092887)을 확인하십시오. tl; dr 버전은 다음과 같을 수 있습니다. 웹 사이트에도 불구하고 일부 정보는 RSS에서 사용할 수 없습니다. 희망이 당신을 돕는다. –

답변

1

이 답변은 만족스럽지 않지만 많은 시도 후에 해결할 수 있습니다. XML 피드가 실제로 오류가있는 것처럼 보이며 실제 사용에 사용해서는 안됩니다. 또한 공개 JSON 피드를 사용할 때 검토 날짜와 같은 특정 필드가 누락되었습니다. 어느 피드도 개발자의 응답을보고하지 않습니다.

Apple이 iTunes (데스크톱) 또는 App Store (iOS)에 이러한 피드를 사용하지 않음이 분명합니다. 필자는 iTunes가 리뷰 데이터를 요청하는 방식을 궁극적으로 리버스 엔지니어링하여 사용자 에이전트와 버전을 일치시키면서 동일한 방식으로 요청하면 필요한 데이터를 반환 할 것이라고 생각했습니다. 이러한 요청은 어느 정도 속도가 제한되는 것으로 보이며 많은 양의 구문 분석이 필요한 HTML과 JSON이 혼합 된 데이터가 제공됩니다. 또한 개인 통화이기 때문에 언제든지 Apple은 쉽게 문을 닫을 수 있습니다.

관련 문제