Amazon Book API에서 책 그래픽과 설명을 얻으려면 어떻게해야합니까?

StackOverflow https://stackoverflow.com/questions/433104

  •  10-07-2019
  •  | 
  •  

문제

이 URL ISBN 번호를 Amazon에 보내고 저자, 타이틀 및 게시자를 포함하여 작은 XML을 다시 얻습니다.

그러나 제목에 대한 소형, 중간 및 큰 그래픽 및 서적 설명도 얻고 싶습니다.

문제 : Google에서 또는 Amazon Associates의 "AWS 계정"에 로그인했을 때 작동하는 REST URL 예제/문서를 찾을 수 없습니다.

2003-2005 년의 많은 사례를 찾았지만 모두 오래되지 않고 오류를 제공합니다. Amazon의 클라우드 웹 서비스는 책에 대한 간단한 REST API 문서를 난독 화 한 것으로 보입니다.

누구든지 REST/XML을 통해 Amazon에서 책에 대한 자세한 정보를 얻는 방법에 대한 문서를 알려줄 수 있습니까?

내가 시도한 것은 다음과 같습니다 멀리.

도움이 되었습니까?

해결책

그래서, 내가 내 자신의 질문에 대답 할 수있게 해주세요. 또 다른 질문에서 나는 이것을 발견했습니다. 유용한 PDF 그리고 다음 URL 예를 들어 이미지를 가져옵니다. "ResponskGroup"참조

다른 팁

ResponseGroup은 핵심이며, 하나 이상의 (쉼표로 분리 된) 결과가 함께 스티치됩니다.

즉, "& responsegroup = images, small"은 제품에 대한 최소한의 세부 사항과 이미지를 반환합니다.

PHP를 사용하여 Amazon XML을 잡고 다음과 같은 간단한 기능을 사용하여 CURL을 가져 오는 기능을 구축했습니다.

    <?php
function Get_Amazon_XML($tag, $api, $secretkey, $region, $department, $query)
{
$time = time() + 10000;
$method = 'GET';
$host = 'webservices.amazon.'.$region;
$uri = '/onca/xml';
$slug["Service"] = "AWSECommerceService";
$slug["Operation"] = "ItemSearch";
$slug["SubscriptionId"] = $api;
$slug["AssociateTag"] = $tag;
$slug["SearchIndex"] = $department;
$slug["Condition"] = 'All';
$slug["Keywords"] = $query;
$params["ItemPage"] = 1;
$slug["TruncateReviewsAt"] = '500';
$slug["ResponseGroup"] = 'Images,ItemAttributes,EditorialReview';
$slug["Timestamp"] = gmdate("Y-m-d\TH:i:s\Z",$time);
$slug["Version"] = "2011-08-01";
ksort($slug);
$query_slug = array();
foreach ($slug as $slugs=>$value)
{
$slugs = str_replace("%7E", "~", rawurlencode($slugs));
$value = str_replace("%7E", "~", rawurlencode($value));
$query_slug[] = $slugs."=".$value;
}
$query_slug = implode("&", $query_slug);
$signinurl = $method."\n".$host."\n".$uri."\n".$query_slug;
$signature = base64_encode(hash_hmac("sha256", $signinurl, $secretkey, True)); // Get Amazon Signature API
$signature = str_replace("%7E", "~", rawurlencode($signature));
$request = "http://".$host.$uri."?".$query_slug."&Signature=".$signature;
$ch = curl_init();
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (compatible; Konqueror/4.0; Microsoft Windows) KHTML/4.0.80 (like Gecko)");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $request);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
$response = curl_exec($ch);
curl_close($ch);
return $response;
}
?>
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top