使用他们的Trading API,使用GetSellerList获取ebay产品/项目的大图像库

时间:2016-05-09 00:30:30

标签: php ebay ebay-api

我已经设法使用ebay的交易API将我的Feed数据全部恢复良好,但很难弄明白我是如何获得的,并且#UR;图片来自于#ur;在这里找到outputSelector:http://developer.ebay.com/devzone/finding/callref/findItemsAdvanced.html#Response.searchResult.item.pictureURLSuperSize

到目前为止,我已经设法使用" PictureDetails"取回整个画廊。 TagName虽然只能带回中等质量的图像版本(500x300px ish),但我希望尽可能大!也许我需要更改GranularityLevel

作为一个简短的见解,我使用这个xml方法获取数据:

$requestXmlBody = '<?xml version="1.0" encoding="utf-8" ?>';
    $requestXmlBody .= '<GetSellerListRequest xmlns="urn:ebay:apis:eBLBaseComponents">';
    $requestXmlBody .= '<RequesterCredentials>';
    $requestXmlBody .=      '<eBayAuthToken>'.$this->_keys['production']['UserToken'].'</eBayAuthToken>';
    $requestXmlBody .= '</RequesterCredentials>';
    $requestXmlBody .= '<Pagination ComplexType="PaginationType">';
    $requestXmlBody .=      '<EntriesPerPage>30</EntriesPerPage>';
    $requestXmlBody .=      '<PageNumber>1</PageNumber>';
    $requestXmlBody .= '</Pagination>';
    $requestXmlBody .= '<UserID>username</UserID>';
    $requestXmlBody .= '<StartTimeFrom>';
    $requestXmlBody .= $date4MonthsAgo;
    $requestXmlBody .= '</StartTimeFrom>';
    $requestXmlBody .= '<StartTimeTo>'.$dateNow.'</StartTimeTo>';
    $requestXmlBody .= '<IncludeWatchCount>true</IncludeWatchCount>';
    $requestXmlBody .= '<GranularityLevel>Medium</GranularityLevel>';//could change if its slow
    $requestXmlBody .= '<ErrorLanguage>en_GB</ErrorLanguage>';
    $requestXmlBody .= '</GetSellerListRequest>​';

再往下我在项目循环中输出数据:

    $itemId = $items->item($i)->getElementsByTagName('ItemID')->item(0)->nodeValue;
    $itemUrl = $items->item($i)->getElementsByTagName('ViewItemURL')->item(0)->nodeValue;
    $startTime = $items->item($i)->getElementsByTagName('StartTime')->item(0)->nodeValue;
    $endTime = $items->item($i)->getElementsByTagName('EndTime')->item(0)->nodeValue;
    $bidCount = $items->item($i)->getElementsByTagName('BidCount')->item(0)->nodeValue;
    $priceInGBP = $items->item($i)->getElementsByTagName('ConvertedCurrentPrice')->item(0)->nodeValue;
    $status = $items->item($i)->getElementsByTagName('ListingStatus')->item(0)->nodeValue;
    $title = $items->item($i)->getElementsByTagName('Title')->item(0)->nodeValue;
    $image = $items->item($i)->getElementsByTagName('PictureDetails')->item(0)->nodeValue;

任何帮助都会令人愉快,谢谢!

1 个答案:

答案 0 :(得分:1)

替换以下行:

$requestXmlBody .= '</GetSellerListRequest>​';

以下一个。

$requestXmlBody .= '<outputSelector>​PictureURLSuperSize</outputSelector>';
$requestXmlBody .= '</GetSellerListRequest>​';

您将在响应中找到<​PictureURLSuperSize>节点。

希望这有帮助。