【问题标题】:IKEA com product scraper宜家com产品刮板
【发布时间】:2015-12-19 06:51:34
【问题描述】:

我想做一个简单的 ikea com 产品页面爬虫。这是我得到的

function curl($url){
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,$url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
    return curl_exec($ch);
    curl_close($ch);
}
function get_product() {
    $product_id ='702.642.81';
    $prod_id = preg_replace('/\./', '', $product_id); 
    $domain = 'http://www.ikea.com/ru/ru/catalog/products/'.$prod_id.'/?type=xml&dataset=normal,allImages,prices,attributes';
    $html = curl($domain);
    $xml = simplexml_load_string($html);
    print_r($xml);
}

这似乎有效。 这是get_product() 结果的片段

[products] => SimpleXMLElement Object
    (
        [product] => SimpleXMLElement Object
            (
                [URL] => /ru/ru/catalog/products/P70264281/
                [browseable] => true
                [partNumber] => P70264281
                [name] => ЛЕРХАМН 
                [nameswe] => SimpleXMLElement Object

但是有一些产品(产品ID)给出空响应

[products] => SimpleXMLElement Object
    (
    )

产品的id是090.071.63。此产品页面(在 ikea com)的原始链接在产品 ID products/*S*09007163 之前包含“S”。 所以我尝试在$domain添加“S”前缀并没有帮助

但如果我点击此链接http://www.ikea.com/ru/ru/catalog/products/S09007163/?type=xml&dataset=normal,allImages,prices,attributes 它会显示产品数据。

有什么问题?也许以前有人遇到过这种情况

【问题讨论】:

  • 为什么不在产品页面 URL 中包含 S?只需细化这个 id,留下字母和数字。
  • 同样在你的 curl() 过程中你 return curl_exec($ch) 在 `curl_close($ch)` 之前,这意味着第二个语句不会被执行。只需将curl_exec($ch) 结果保存在一个变量中,并在关闭 CURL 处理程序后返回它。
  • 我会试试的
  • 我尝试在产品页面链接中添加“S”,但没有成功,这是这个“scrapper”的奇怪部分
  • 你有*S*09007163所以你使用S09007163;当你得到09007163 时,你插入09007163 而没有S

标签: php curl web-scraping


【解决方案1】:

我也在做同样的事情,但使用AutoIT3 结合JQXidel 作为我的工具链。

我的方法是:

  • 为“所有产品”抓取宜家页面并获取包含“类别”的链接。例如床、灯……

  • 对于每个类别,获取指向产品页面的链接。这些也很容易找到,因为它们有特定的类别并以宜家编号结尾

  • 最后对于每个产品(我有大约 200 个类别页面,大约 15200 个产品。可能错过了一些,但现在没关系),下载产品页面。这有一个很大的 JSON 块,其中包含产品的所有内容。我可以根据需要从这里提取数据,例如手册、图像、...

所以基本上我是自上而下地工作,将每个列表保存在本地,以避免向宜家发送过多的流量。

最后一步是处理图像和手册。

一些注意事项:

  • 您会以您指定的语言获得 JSON,例如 ikea.com/da/dk 或 /ru/ru
  • 网址井井有条,层次分明
  • 查看 javascript 文件,它们包含大量来自宜家开发人员的 cmets。在窗帘后面偷看一眼很有趣。

【讨论】:

    【解决方案2】:

    这可能有助于减少获取产品信息的抓取和解析部分。

    有人对宜家移动应用程序进行了逆向工程,以查看请求的去向,并找到了一个公共 API 端点,该端点返回单个产品的 JSON 数据。

    很遗憾,您正在搜索的产品 (090.071.63) 不再可用,但我发现这是一张名为“LERHAMN”的桌子,它可用,产品 ID 为 20444256。

    curl \
      --location \
      --request GET 'https://securema2.ikea.com/catalog/v2/ru/ru/product/ART,20444256' \
      --header 'Contract: 28292' \
      --header 'Consumer: IRAA'
    

    返回

    [
      {
        "ItemNo": "20444256",
        "ItemNoGlobal": "40444255",
        "ItemType": "ART",
        "ProductName": "ЛЕРХАМН",
        "ProductTypeName": "Стол",
        "ValidDesignText": "светлая морилка антик, белая морилка",
        "OnlineSellable": "false",
        "OnlineRange": "false",
        "BreathTakingItem": "false",
        "ItemUnitCode": "PIECES",
        "NewsType": "",
        "ItemNumberOfPackages": "2",
        "AssemblyCode": "Y",
        "DesignerNameComm": "Nike Karlsson",
        "ItemMeasureReferenceTextMetric": "118x74 см",
        "ItemMeasureReferenceTextImperial": "46 1/2x29 1/8 дюйм",
        "ItemPriceUnitFactorMetric": "",
        "ItemPriceUnitFactorImperial": "",
        "PresentationGroupCodeEn": "",
        "UnitPriceGroupCode": "",
        "PriceUnitTextMetric": "",
        "PriceUnitTextImperial": "",
        "PriceUnitTextMetricEn": "",
        "PriceUnitTextImperialEn": "",
        "RetailItemRating": {},
        "GPRItemOrigin": "52068",
        "GlobalisationContext": {
          "CountryCodeIso": "ru",
          "LanguageCodeIso": "ru"
        },
        "ClassUnitKey": {
          "ClassType": "GR",
          "ClassUnitType": "RU",
          "ClassUnitCode": "RU"
        },
        "RetailItemFilterAttributeList": {
          "RetailItemFilterAttribute": [
            {
              "FilterAttributeType": "Colour",
              "FilterAttributeTypeName": "Цвет",
              "FilterAttributeValueList": {
                "FilterAttributeValue": [
                  {
                    "FilterAttributeValueId": "10156",
                    "FilterAttributeValueName": "белый"
                  }
                ]
              }
            }
          ]
        },
        "RetailItemCareInstructionList": {
          "RetailItemCareInstruction": []
        },
        "RetailItemCommPriceList": {
          "RetailItemCommPrice": [
            {
              "RetailPriceType": "RegularSalesUnitPrice",
              "Price": "5499",
              "PriceExclTax": "4582.5",
              "CurrencyCode": "RUB",
              "ValidFromDateTime": "",
              "ValidToDateTime": "",
              "ReasonCode": "",
              "MaximumRetailPrice": "",
              "ComparableUnitPrice": {
                "UnitPriceMetric": "",
                "UnitPriceMetricExclTax": "",
                "UnitPriceImperial": "",
                "UnitPriceImperialExclTax": ""
              }
            }
          ]
        },
        "GPRCommSelectionCriteriaSelectionList": {
          "GPRCommSelectionCriteriaSelection": [
            {
              "SelectionCriteriaCode": "COLOUR",
              "SelectionCriteriaName": "цвет",
              "SelectionCriteriaValue": "светлая морилка антик/белая морилка"
            },
            {
              "SelectionCriteriaCode": "SIZE",
              "SelectionCriteriaName": "размеры",
              "SelectionCriteriaValue": "118x74 см"
            }
          ]
        },
        "AttributeGroupList": {
          "AttributeGroup": [
            {
              "GroupName": "SEO",
              "AttributeList": {
                "Attribute": [
                  {
                    "Name": "DESCRIPTION",
                    "Value": "IKEA - ЛЕРХАМН, Стол, светлая морилка антик/белая морилка, 118x74 см , Компактный стол – идеальное решение даже для небольшого помещения.Массив сосны – прочный натуральный материал, который со временем выглядит только лучше.Поверхность, покрытая проз"
                  }
                ]
              }
            }
          ]
        },
        "RetailItemCustomerBenefitList": {
          "RetailItemCustomerBenefit": [
            {
              "CustomerBenefitText": "Компактный стол – идеальное решение даже для небольшого помещения.",
              "SortNo": "1"
            },
            {
              "CustomerBenefitText": "Массив сосны – прочный натуральный материал, который со временем выглядит только лучше.",
              "SortNo": "2"
            },
            {
              "CustomerBenefitText": "Поверхность, покрытая прозрачным лаком, проста в уходе.",
              "SortNo": "3"
            }
          ]
        },
        "RetailItemCustomerMaterialList": {
          "RetailItemCustomerMaterial": [
            {
              "ProductTypeText": "",
              "SortNo": "1",
              "RetailItemPartMaterialList": {
                "RetailItemPartMaterial": [
                  {
                    "MaterialText": "Массив сосны, Морилка, Прозрачный акриловый лак",
                    "PartText": "",
                    "SortNo": "1"
                  }
                ]
              }
            }
          ]
        },
        "RetailItemLongBenefitList": {
          "RetailItemLongBenefit": []
        },
        "RetailItemGoodToKnowList": {
          "RetailItemGoodToKnow": [
            {
              "GoodToKnowTypeNameEn": "Purchase-/Other information",
              "SortNo": "1",
              "GoodToKnowText": "На 4 человека."
            },
            {
              "GoodToKnowTypeNameEn": "Purchase-/Other information",
              "SortNo": "2",
              "GoodToKnowText": "Рекомендуется использовать только в помещении."
            },
            {
              "GoodToKnowTypeNameEn": "Compl. assembly information",
              "SortNo": "3",
              "GoodToKnowText": "Для обеспечения максимального качества при необходимости подтягивайте шурупы."
            }
          ]
        },
        "RetailItemCustomerEnvironmentList": {
          "RetailItemCustomerEnvironment": {
            "SortNo": "1",
            "RetailItemEnvironmentTextList": [
              {
                "EnvironmentText": "Пригодно для переработки или энергетической утилизации, если это предусмотрено в вашем регионе.",
                "SortNo": "1"
              },
              {
                "EnvironmentText": "В ИКЕА мы предъявляем строгие требования к древесине и не используем сырье из нелегально вырубленных лесов. К 2020 году вся древесина будет поставляться из сертифицированных лесных хозяйств, или будет использовано переработанное сырье.",
                "SortNo": "2"
              },
              {
                "EnvironmentText": "100 % возобновляемый материал (кроме креплений).",
                "SortNo": "3"
              }
            ]
          }
        },
        "RetailItemCommPackageMeasureList": {
          "RetailItemCommPackageMeasure": [
            {
              "SortNo": "1",
              "PackageMeasureTextImperial": "14 ¾ дюйм",
              "PackageMeasureTextMetric": "38 см",
              "PackageMeasureType": "WIDTH",
              "ConsumerPackNumber": "1"
            },
            {
              "SortNo": "1",
              "PackageMeasureTextImperial": "2 дюйм",
              "PackageMeasureTextMetric": "5 см",
              "PackageMeasureType": "HEIGHT",
              "ConsumerPackNumber": "1"
            },
            {
              "SortNo": "1",
              "PackageMeasureTextImperial": "43 ½ дюйм",
              "PackageMeasureTextMetric": "110 см",
              "PackageMeasureType": "LENGTH",
              "ConsumerPackNumber": "1"
            },
            {
              "SortNo": "1",
              "PackageMeasureTextImperial": "16 фнт 7 унц",
              "PackageMeasureTextMetric": "7.45 кг",
              "PackageMeasureType": "WEIGHT",
              "ConsumerPackNumber": "1"
            },
            {
              "SortNo": "1",
              "PackageMeasureTextImperial": "30 дюйм",
              "PackageMeasureTextMetric": "77 см",
              "PackageMeasureType": "WIDTH",
              "ConsumerPackNumber": "2"
            },
            {
              "SortNo": "1",
              "PackageMeasureTextImperial": "1 дюйм",
              "PackageMeasureTextMetric": "3 см",
              "PackageMeasureType": "HEIGHT",
              "ConsumerPackNumber": "2"
            },
            {
              "SortNo": "1",
              "PackageMeasureTextImperial": "47 ½ дюйм",
              "PackageMeasureTextMetric": "121 см",
              "PackageMeasureType": "LENGTH",
              "ConsumerPackNumber": "2"
            },
            {
              "SortNo": "1",
              "PackageMeasureTextImperial": "19 фнт 13 унц",
              "PackageMeasureTextMetric": "9.00 кг",
              "PackageMeasureType": "WEIGHT",
              "ConsumerPackNumber": "2"
            }
          ]
        },
        "RetailItemCommMeasureList": {
          "RetailItemCommMeasure": [
            {
              "ItemMeasureTypeName": "Длина",
              "ItemMeasureTextMetric": "118 см",
              "ItemMeasureTextImperial": "46 1/2 дюйм",
              "SortNo": "1"
            },
            {
              "ItemMeasureTypeName": "Ширина",
              "ItemMeasureTextMetric": "74 см",
              "ItemMeasureTextImperial": "29 1/8 дюйм",
              "SortNo": "2"
            },
            {
              "ItemMeasureTypeName": "Высота",
              "ItemMeasureTextMetric": "75 см",
              "ItemMeasureTextImperial": "29 1/2 дюйм",
              "SortNo": "3"
            }
          ]
        },
        "RetailItemFeeList": {
          "RetailItemFee": []
        },
        "RetailItemTechnicalInformationGroupList": {
          "RetailItemTechnicalInformationGroup": []
        },
        "CatalogRefList": {
          "CatalogRef": [
            {
              "Catalog": {
                "CatalogId": "genericproducts",
                "CatalogName": "Товары",
                "CatalogUrl": "/retail/iows/ru/ru/catalog/genericproducts"
              },
              "CatalogElementList": {
                "CatalogElement": [
                  {
                    "CatalogElementId": "52068",
                    "CatalogElementType": "GENERIC PRODUCT",
                    "CatalogElementName": "name",
                    "CatalogElementUrl": "/retail/iows/ru/ru/catalog/genericproducts/52068"
                  }
                ]
              }
            },
            {
              "Catalog": {
                "CatalogId": "departments",
                "CatalogName": "Отделы",
                "CatalogUrl": "/retail/iows/ru/ru/catalog/departments"
              },
              "CatalogElementList": {
                "CatalogElement": [
                  {
                    "CatalogElementId": "21826",
                    "CatalogElementType": "CHAPTER",
                    "CatalogElementName": "Столы до 4 мест",
                    "CatalogElementUrl": "/retail/iows/ru/ru/catalog/departments/dining/21826"
                  }
                ]
              }
            },
            {
              "Catalog": {
                "CatalogId": "functional",
                "CatalogName": "Функциональный",
                "CatalogUrl": "/retail/iows/ru/ru/catalog/functional"
              },
              "CatalogElementList": {
                "CatalogElement": [
                  {
                    "CatalogElementId": "21826",
                    "CatalogElementType": "CHAPTER",
                    "CatalogElementName": "Столы до 4 мест",
                    "CatalogElementUrl": "/retail/iows/ru/ru/catalog/functional/10368/21826"
                  }
                ]
              }
            }
          ]
        },
        "CatalogElementRelationList": {
          "CatalogElementRelation": [
            {
              "CatalogElementId": "30360920",
              "CatalogElementType": "ART",
              "CatalogElementName": "ЛЕРХАМН",
              "CatalogElementRelationSemantic": "MAY_BE_COMPLETED_WITH"
            },
            {
              "CatalogElementId": "80334226",
              "CatalogElementType": "ART",
              "CatalogElementName": "КАУСТБИ",
              "CatalogElementRelationSemantic": "MAY_BE_COMPLETED_WITH"
            },
            {
              "CatalogElementId": "50407988",
              "CatalogElementType": "ART",
              "CatalogElementName": "ВИСТОФТ",
              "CatalogElementRelationSemantic": "MAY_BE_COMPLETED_WITH"
            },
            {
              "CatalogElementId": "60399803",
              "CatalogElementType": "ART",
              "CatalogElementName": "ХЕКТАР",
              "CatalogElementRelationSemantic": "MAY_BE_COMPLETED_WITH"
            }
          ]
        },
        "DemandList": {
          "Demand": []
        },
        "RetailItemImageList": {
          "RetailItemImage": [
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S1",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0238239_PE377693_S1.JPG",
              "ImageWidth": "40",
              "ImageHeight": "40",
              "SortNo": "1",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S2",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0238239_PE377693_S2.JPG",
              "ImageWidth": "110",
              "ImageHeight": "110",
              "SortNo": "1",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S3",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0238239_PE377693_S3.JPG",
              "ImageWidth": "250",
              "ImageHeight": "250",
              "SortNo": "1",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S4",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0238239_PE377693_S4.JPG",
              "ImageWidth": "500",
              "ImageHeight": "500",
              "SortNo": "1",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S5",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0238239_PE377693_S5.JPG",
              "ImageWidth": "2000",
              "ImageHeight": "2000",
              "SortNo": "1",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "PRICE TAG",
              "ImageSize": "S5",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0238524.JPG",
              "ImageWidth": "2000",
              "ImageHeight": "2000",
              "SortNo": "1",
              "ImageType": "LINE DRAWING"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S3",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0744759_PE743386_S3.JPG",
              "ImageWidth": "250",
              "ImageHeight": "250",
              "SortNo": "2",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S4",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0744759_PE743386_S4.JPG",
              "ImageWidth": "500",
              "ImageHeight": "500",
              "SortNo": "2",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S5",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0744759_PE743386_S5.JPG",
              "ImageWidth": "2000",
              "ImageHeight": "2000",
              "SortNo": "2",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S3",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0745196_PE743621_S3.JPG",
              "ImageWidth": "250",
              "ImageHeight": "250",
              "SortNo": "3",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S4",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0745196_PE743621_S4.JPG",
              "ImageWidth": "500",
              "ImageHeight": "500",
              "SortNo": "3",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S5",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0745196_PE743621_S5.JPG",
              "ImageWidth": "2000",
              "ImageHeight": "2000",
              "SortNo": "3",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S3",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0908279_PH159442_S3.JPG",
              "ImageWidth": "250",
              "ImageHeight": "250",
              "SortNo": "4",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S4",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0908279_PH159442_S4.JPG",
              "ImageWidth": "500",
              "ImageHeight": "500",
              "SortNo": "4",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S5",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0908279_PH159442_S5.JPG",
              "ImageWidth": "2000",
              "ImageHeight": "2000",
              "SortNo": "4",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S3",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0732510_PE738650_S3.JPG",
              "ImageWidth": "250",
              "ImageHeight": "250",
              "SortNo": "5",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S4",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0732510_PE738650_S4.JPG",
              "ImageWidth": "500",
              "ImageHeight": "500",
              "SortNo": "5",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S5",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0732510_PE738650_S5.JPG",
              "ImageWidth": "2000",
              "ImageHeight": "2000",
              "SortNo": "5",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S3",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0719940_PH134863_S3.JPG",
              "ImageWidth": "250",
              "ImageHeight": "250",
              "SortNo": "6",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S4",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0719940_PH134863_S4.JPG",
              "ImageWidth": "500",
              "ImageHeight": "500",
              "SortNo": "6",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S5",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0719940_PH134863_S5.JPG",
              "ImageWidth": "2000",
              "ImageHeight": "2000",
              "SortNo": "6",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S3",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0871644_PE594929_S3.JPG",
              "ImageWidth": "250",
              "ImageHeight": "250",
              "SortNo": "7",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S4",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0871644_PE594929_S4.JPG",
              "ImageWidth": "500",
              "ImageHeight": "500",
              "SortNo": "7",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S5",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0871644_PE594929_S5.JPG",
              "ImageWidth": "2000",
              "ImageHeight": "2000",
              "SortNo": "7",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S3",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0870035_PE598860_S3.JPG",
              "ImageWidth": "250",
              "ImageHeight": "250",
              "SortNo": "8",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S4",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0870035_PE598860_S4.JPG",
              "ImageWidth": "500",
              "ImageHeight": "500",
              "SortNo": "8",
              "ImageType": "PICTURE SINGLE"
            },
            {
              "ImageUsage": "INTERNET",
              "ImageSize": "S5",
              "ImageUrl": "/ru/ru/images/products/lerhamn-stol__0870035_PE598860_S5.JPG",
              "ImageWidth": "2000",
              "ImageHeight": "2000",
              "SortNo": "8",
              "ImageType": "PICTURE SINGLE"
            }
          ]
        },
        "RetailItemCommAttachmentList": {
          "RetailItemCommAttachment": [
            {
              "AttachmentType": "ASSEMBLY_INSTRUCTION",
              "AttachmentUrl": "/ru/ru/assembly_instructions/lerhamn-stol__AA-2135389-4_pub.pdf",
              "SortNo": "1"
            }
          ]
        },
        "GPRCommSelectionCriteriaList": {
          "GPRCommSelectionCriteria": [
            {
              "SelectionCriteriaCode": "COLOUR",
              "SelectionCriteriaName": "цвет",
              "SortNo": "1",
              "GPRCommSelectionCriteriaValueList": {
                "GPRCommSelectionCriteraValue": [
                  {
                    "SelectionCriteriaValue": "светлая морилка антик/белая морилка",
                    "ItemRefList": {
                      "ItemRef": [
                        {
                          "ItemNo": "40444260",
                          "ItemType": "ART",
                          "ItemUrl": "/retail/iows/ru/ru/catalog/items/art,40444260"
                        },
                        {
                          "ItemNo": "20444256",
                          "ItemType": "ART",
                          "ItemUrl": "/retail/iows/ru/ru/catalog/items/art,20444256"
                        }
                      ]
                    }
                  },
                  {
                    "SelectionCriteriaValue": "черно-коричневый",
                    "ItemRefList": {
                      "ItemRef": [
                        {
                          "ItemNo": "30444307",
                          "ItemType": "ART",
                          "ItemUrl": "/retail/iows/ru/ru/catalog/items/art,30444307"
                        },
                        {
                          "ItemNo": "40444302",
                          "ItemType": "ART",
                          "ItemUrl": "/retail/iows/ru/ru/catalog/items/art,40444302"
                        }
                      ]
                    }
                  }
                ]
              }
            },
            {
              "SelectionCriteriaCode": "SIZE",
              "SelectionCriteriaName": "размеры",
              "SortNo": "2",
              "GPRCommSelectionCriteriaValueList": {
                "GPRCommSelectionCriteraValue": [
                  {
                    "SelectionCriteriaValue": "118x74 см",
                    "ItemRefList": {
                      "ItemRef": [
                        {
                          "ItemNo": "20444256",
                          "ItemType": "ART",
                          "ItemUrl": "/retail/iows/ru/ru/catalog/items/art,20444256"
                        },
                        {
                          "ItemNo": "40444302",
                          "ItemType": "ART",
                          "ItemUrl": "/retail/iows/ru/ru/catalog/items/art,40444302"
                        }
                      ]
                    }
                  },
                  {
                    "SelectionCriteriaValue": "74x74 см",
                    "ItemRefList": {
                      "ItemRef": [
                        {
                          "ItemNo": "40444260",
                          "ItemType": "ART",
                          "ItemUrl": "/retail/iows/ru/ru/catalog/items/art,40444260"
                        },
                        {
                          "ItemNo": "30444307",
                          "ItemType": "ART",
                          "ItemUrl": "/retail/iows/ru/ru/catalog/items/art,30444307"
                        }
                      ]
                    }
                  }
                ]
              }
            }
          ]
        }
      }
    ]
    

    不幸的是,这个端点似乎不是很可靠。当产品列在国家/地区商店的网站上时,不确定端点是否会返回该产品的数据。也不能保证以另一种语言请求信息总是有效的。

    顺便说一句。产品代码前面的“S”似乎暗示该产品是“SPR”而不是“ART”产品类型。还有“SCI”产品类型,但不清楚何时使用。

    【讨论】:

      【解决方案3】:

      据我所知,宜家网站阻止网页抓取,?‍? 所以要使用来自网络抓取服务的 API,比如 https://catalogloader.com/projects/parser-ikea-ru-ikea-pl-ikea-com 对于 ru\pl 或https://mydataprovider.com/sites/ikea/ 对 ikea.com 或任何其他网站有意义, 很难刮到很多宜家数据,特别是股票变化, 因为每个产品变体都需要 Web 请求,所以 1 次导出总共有超过 8 万个请求 这些家伙每天为特定仓库缓存数据, 因此您可以通过 api 调用(json 或 xml)我们的输入获取纯数据。 ikea.com 更改了变体输出: 1 年前,他们甚至为没有变体的扁平产品创建了 1 个假变体, 今年他们改变了产量:没有变体的扁平产品没有变体?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-02-25
        • 1970-01-01
        • 1970-01-01
        • 2015-01-22
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多