{"id":322,"date":"2018-02-07T10:55:29","date_gmt":"2018-02-07T10:55:29","guid":{"rendered":"https:\/\/www.diggernaut.com\/blog\/?p=322"},"modified":"2019-01-12T16:50:47","modified_gmt":"2019-01-12T16:50:47","slug":"free-web-scraper-athleta-gap-online-store","status":"publish","type":"post","link":"https:\/\/www.diggernaut.com\/blog\/free-web-scraper-athleta-gap-online-store\/","title":{"rendered":"Free web scraper for Athleta Gap online store"},"content":{"rendered":"<p>Athleta is a subsidiary of Gap Corporation, which develops, manufactures and sells women\u2019s and children\u2019s clothes for sports and active life. This free web scraper collects data about all the products presented in the athleta.gap.com online store.<\/p>\n<p><strong>Approx number of goods:<\/strong> 20000<br>\n<strong>Approx number of page requests:<\/strong> 20000<br>\n<strong>Recommended subscription plan:<\/strong> X-Small<\/p>\n<p><strong>PLEASE NOTE!<\/strong> The number of requests can exceed the number of products, because data about variations, images, etc. can be scraped from other resources and will require additional requests. Also part of the product data can be delivered using XHR requests, which also increases the total number of required page requests.<\/p>\n<h3>How to use the web scraper to extract data about goods and prices from athleta.gap.com<\/h3>\n<p>To use the web scraper for !!!SPECIFIC!!! store\u2019s website, you must have an account with our Diggernaut service. You can just simply follow this comprehensive guide:<\/p>\n<ol>\n<li>Go through this <a href=\"https:\/\/www.diggernaut.com\/accounts\/signup\/\">registration link<\/a> to open free account with <a href=\"https:\/\/www.diggernaut.com\">Diggernaut<\/a><\/li>\n<li>After registering and confirming the email address, you will need to <a href=\"https:\/\/www.diggernaut.com\/accounts\/login\/\">log in to your account<\/a><\/li>\n<li>Create a project with any name and description, if you do not know how to do it, please refer to our <a href=\"https:\/\/www.diggernaut.com\/dev\/website-projects-create-new-project.html\">documentation<\/a><\/li>\n<li>Switch to the created project and create a digger with any name, if you do not know how to do it, please refer to our <a href=\"https:\/\/www.diggernaut.com\/dev\/website-projects-create-new-digger.html\">documentation<\/a><\/li>\n<li>Copy the following digger configuration to the clipboard and paste it into the digger you created, if you do not know how to do it, refer to our <a href=\"https:\/\/www.diggernaut.com\/dev\/website-projects-digger-config.html\">documentation<\/a><\/li>\n<li>Switch the mode of the digger from Debug to Active, if you do not know how to do it, please refer to our <a href=\"https:\/\/www.diggernaut.com\/dev\/website-projects-edit-digger.html\">documentation<\/a><\/li>\n<li>Run your digger and wait until the completion, if you do not know how to do it, please refer to our <a href=\"https:\/\/www.diggernaut.com\/dev\/website-projects-run-digger.html\">documentation<\/a><\/li>\n<li>Download the scraped dataset in the format you need, if you do not know how to do it, please refer to our <a href=\"https:\/\/www.diggernaut.com\/dev\/website-projects-scraped-data.html\">documentation<\/a><\/li>\n<\/ol>\n<p>You can also setup a schedule for running your scraper and collect data regularly.<\/p>\n<h3>Scraping configuration for the digger<\/h3>\n<pre class=\"language-yaml line-numbers\"><code class=\"language-yaml\">---\nconfig:\n    debug: 2\n    agent: Firefox\ndo:\n- walk:\n    to: http:\/\/athleta.gap.com\/\n    do:\n    - find:\n        path: div.topnav_atol>ul>li>a\n        do:\n        - parse:\n            attr: href\n        - space_dedupe\n        - trim\n        - if:\n            match: \\w+\n            do:\n            - link_add:\n                pool: main\n- walk:\n    to: links\n    pool: main\n    do:\n    - find:\n        path: .sidebar-navigation\n        do:\n        - node_remove: h1\n        - sequence:\n            header: h2\n            selector: h2,div\n        - find:\n            path: div.sequence\n            do:\n            - variable_clear: catname\n            - find:\n                path: h2\n                do:\n                - parse\n                - space_dedupe\n                - trim\n                - variable_set: catname\n            - find:\n                path: .sidebar-navigation--category--link\n                do: \n                - pool_clear: pager\n                - parse:\n                    attr: href\n                    filter:\n                        - cid=(.+)\n                - variable_set: cid\n                - register_set: http:\/\/athleta.gap.com\/resources\/productSearch\/v1\/search?cid=&locale=en_US&isFacetsEnabled=true\n                - link_add:\n                    pool: pager\n                - walk:\n                    to: links\n                    pool: pager\n                    do:\n                    - variable_clear: ptot\n                    - find:\n                        path: pageNumberTotal\n                        do:\n                        - parse\n                        - if:\n                            match: (^\\s*[0-1]\\s*$)\n                            else:\n                            - variable_set: ptot\n                    - find:\n                        path: pageNumberRequested\n                        do:\n                        - parse\n                        - if:\n                            match: (^\\s*0\\s*$)\n                            do:\n                            - variable_get: ptot\n                            - if:\n                                match: (\\d)\n                                do:\n                                - if:\n                                    gt: 1\n                                    do:\n                                    - eval:\n                                        routine: js\n                                        body: &#039;(function (){var r = &quot;&quot;; for (var i = 1; i; i++){r += &quot;<div>&quot;+i+&quot;<\/div>&quot;}; return r;})();&#039;\n                                    - to_block\n                                    - find:\n                                        path: div \n                                        do:\n                                        - parse\n                                        - variable_set: pageid\n                                        - register_set: http:\/\/athleta.gap.com\/resources\/productSearch\/v1\/search?cid=&locale=en_US&pageId=&isFacetsEnabled=true\n                                        - link_add:\n                                            pool: pager\n                    - find:\n                        path: productCategory > name\n                        do:\n                        - parse\n                        - space_dedupe\n                        - trim\n                        - variable_set: catname2\n                    - find:\n                        path: productCategory > childProducts\n                        do:\n                        - find:\n                            path: parentBusinessCatalogItemId\n                            do:\n                            - parse\n                            - if:\n                                match: (\\S)\n                                do:\n                                - variable_set: pid\n                                - register_set: http:\/\/athleta.gap.com\/browse\/product.do?pid=&cid=\n                                - walk:\n                                    to: value\n                                    do:\n                                    - variable_clear: isP\n                                    - find:\n                                        path: script:matches(gap.pageProductData\\s*=\\s*\\{)\n                                        do:\n                                        - variable_set:\n                                            field: isP\n                                            value: 1\n                                    - find:\n                                        path: html\n                                        do:\n                                        - variable_get: isP\n                                        - if:\n                                            match: (1)\n                                            do:\n                                            - object_new: product\n                                            - find:\n                                                path: head\n                                                do:\n                                                - eval:\n                                                    routine: js\n                                                    body: &#039;(function (){var d = new Date(); return d.toISOString()})();&#039;\n                                                - object_field_set:\n                                                    object: product\n                                                    field: date\n                                                - static_get: url\n                                                - object_field_set:\n                                                    object: product\n                                                    field: url\n                                                - register_set: &#039;GAP&#039;\n                                                - object_field_set:\n                                                    object: product\n                                                    field: brand\n                                                - find:\n                                                    path: meta[name=&quot;keywords&quot;] \n                                                    do:\n                                                    - parse:\n                                                        attr: content\n                                                    - object_field_set:\n                                                        object: product\n                                                        field: description\n                                            - find:\n                                                path: script:matches(gap.pageProductData\\s*=\\s*\\{)\n                                                do:\n                                                - parse:\n                                                    filter: \n                                                        - gap\\.currentBrand\\s*=\\s*\\&quot;(.+)\\&quot;\\;\n                                                - if:\n                                                    match: (\\S)\n                                                    do:\n                                                    - object_field_set:\n                                                        object: product\n                                                        field: brand\n                                                - parse\n                                                - normalize:\n                                                    routine: replace_substring\n                                                    args:\n                                                        var\\s*gap\\s*=\\s*window\\.gap\\s*\\|\\|\\s*\\{\\s*\\}\\;: &#039;&#039;\n                                                        gap\\.pageProductData\\s*=\\s*: &#039;&#039;\n                                                        \\s*;\\s*gap.currentBrand\\s*=\\s*.*\\;: &#039;&#039;\n                                                - normalize:\n                                                    routine: json2xml\n                                                - to_block\n                                                - find:\n                                                    path: productimages\n                                                    do:\n                                                    - parse:\n                                                        format: html\n                                                    - variable_set: imghtml\n                                                - find:\n                                                    path: variants > productstylecolors > productstylecolorimages\n                                                    do:\n                                                    - parse\n                                                    - normalize:\n                                                        routine: lower\n                                                    - variable_set: imgpath\n                                                    - register_set: \n<div><\/div>\n                                                    - to_block\n                                                    - find:\n                                                        path: safe_\n                                                        do:\n                                                        - variable_clear: getit\n                                                        - find:\n                                                            path: xlarge\n                                                            do:\n                                                            - parse\n                                                            - if:\n                                                                match: (\\S)\n                                                                do:\n                                                                - variable_set:\n                                                                    field: getit\n                                                                    value: 1\n                                                                - normalize:\n                                                                    routine: url\n                                                                - object_field_set:\n                                                                    object: product\n                                                                    field: images\n                                                                    joinby: &quot;|&quot;\n                                                        - variable_get: getit\n                                                        - if:\n                                                            match: (1)\n                                                            else:\n                                                            - find:\n                                                                path: large\n                                                                do:\n                                                                - parse\n                                                                - if:\n                                                                    match: (\\S)\n                                                                    do:\n                                                                    - variable_set:\n                                                                        field: getit\n                                                                        value: 1\n                                                                    - normalize:\n                                                                        routine: url\n                                                                    - object_field_set:\n                                                                        object: product\n                                                                        field: images\n                                                                        joinby: &quot;|&quot;\n                                                        - variable_get: getit    \n                                                        - if:\n                                                            match: (1)\n                                                            else:\n                                                            - find:\n                                                                path: medium\n                                                                do:\n                                                                - parse\n                                                                - if:\n                                                                    match: (\\S)\n                                                                    do:\n                                                                    - variable_set:\n                                                                        field: getit\n                                                                        value: 1\n                                                                    - normalize:\n                                                                        routine: url\n                                                                    - object_field_set:\n                                                                        object: product\n                                                                        field: images\n                                                                        joinby: &quot;|&quot;\n                                                        - variable_get: getit\n                                                        - if:\n                                                            match: (1)\n                                                            else:\n                                                            - find:\n                                                                path: small\n                                                                do:\n                                                                - parse\n                                                                - if:\n                                                                    match: (\\S)\n                                                                    do:\n                                                                    - variable_set:\n                                                                        field: getit\n                                                                        value: 1\n                                                                    - normalize:\n                                                                        routine: url\n                                                                    - object_field_set:\n                                                                        object: product\n                                                                        field: images\n                                                                        joinby: &quot;|&quot;\n                                                - find:\n                                                    path: body_safe > variants > productstylecolors > colorname\n                                                    do:\n                                                    - parse\n                                                    - if:\n                                                        match: (\\S)\n                                                        do:\n                                                        - object_field_set:\n                                                            object: product\n                                                            field: variations\n                                                            joinby: &quot;|&quot;\n                                                - find:\n                                                    path: body_safe > name\n                                                    do:       \n                                                    - parse\n                                                    - if:\n                                                        match: (\\S)\n                                                        do:\n                                                        - object_field_set:\n                                                            object: product\n                                                            field: name\n                                                - find:\n                                                    path: body_safe > currentmaxprice, body_safe > currentminprice\n                                                    do:\n                                                    - parse:\n                                                        filter:\n                                                            - (\\d+\\.?\\d*)\n                                                    - if:\n                                                        match: (\\d+)\n                                                        do:\n                                                        - object_field_set:\n                                                            object: product\n                                                            field: price\n                                                            type: float\n                                                        - register_set: USD\n                                                        - object_field_set:\n                                                            object: product\n                                                            field: currency\n                                                - find:\n                                                    path: styleid\n                                                    slice: 0\n                                                    do:\n                                                    - parse\n                                                    - object_field_set:\n                                                        object: product\n                                                        field: sku\n                                            - find:\n                                                path: body\n                                                do: \n                                                - find:\n                                                    path: &#039;.selected&#039;\n                                                    do:\n                                                    - parse\n                                                    - space_dedupe\n                                                    - trim\n                                                    - object_field_set:\n                                                        object: product\n                                                        field: category\n                                                        joinby: &quot;|&quot;\n                                                - variable_get: catname\n                                                - if:\n                                                    match: (\\S)\n                                                    do:\n                                                    - object_field_set:\n                                                        object: product\n                                                        field: category\n                                                        joinby: &quot;|&quot;\n                                                - variable_get: catname2\n                                                - if:\n                                                    match: (\\S)\n                                                    do:\n                                                    - object_field_set:\n                                                        object: product\n                                                        field: category\n                                                        joinby: &quot;|&quot;\n                                            - object_save:\n                                                name: product\n                    - find:\n                        path: productCategory > childCategories\n                        do:\n                        - variable_clear: catname3\n                        - find:\n                            path: name\n                            slice: 0\n                            do:\n                            - parse\n                            - space_dedupe\n                            - trim\n                            - variable_set: catname3\n                        - find:\n                            path: parentBusinessCatalogItemId\n                            do:\n                            - parse\n                            - if:\n                                match: (\\S)\n                                do:\n                                - variable_set: pid\n                                - register_set: http:\/\/athleta.gap.com\/browse\/product.do?pid=&cid=\n                                - walk:\n                                    to: value\n                                    do:\n                                    - variable_clear: isP\n                                    - find:\n                                        path: script:matches(gap.pageProductData\\s*=\\s*\\{)\n                                        do:\n                                        - variable_set:\n                                            field: isP\n                                            value: 1\n                                    - find:\n                                        path: html\n                                        do:\n                                        - variable_get: isP\n                                        - if:\n                                            match: (1)\n                                            do:\n                                            - object_new: product\n                                            - find:\n                                                path: head\n                                                do:\n                                                - eval:\n                                                    routine: js\n                                                    body: &#039;(function (){var d = new Date(); return d.toISOString()})();&#039;\n                                                - object_field_set:\n                                                    object: product\n                                                    field: date\n                                                - static_get: url\n                                                - object_field_set:\n                                                    object: product\n                                                    field: url\n                                                - register_set: &#039;GAP&#039;\n                                                - object_field_set:\n                                                    object: product\n                                                    field: brand\n                                                - find:\n                                                    path: meta[name=&quot;keywords&quot;] \n                                                    do:\n                                                    - parse:\n                                                        attr: content\n                                                    - object_field_set:\n                                                        object: product\n                                                        field: description\n                                            - find:\n                                                path: script:matches(gap.pageProductData\\s*=\\s*\\{)\n                                                do:\n                                                - parse:\n                                                    filter: \n                                                        - gap\\.currentBrand\\s*=\\s*\\&quot;(.+)\\&quot;\\;\n                                                - if:\n                                                    match: (\\S)\n                                                    do:\n                                                    - object_field_set:\n                                                        object: product\n                                                        field: brand\n                                                - parse\n                                                - normalize:\n                                                    routine: replace_substring\n                                                    args:\n                                                        var\\s*gap\\s*=\\s*window\\.gap\\s*\\|\\|\\s*\\{\\s*\\}\\;: &#039;&#039;\n                                                        gap\\.pageProductData\\s*=\\s*: &#039;&#039;\n                                                        \\s*;\\s*gap.currentBrand\\s*=\\s*.*\\;: &#039;&#039;\n                                                - normalize:\n                                                    routine: json2xml\n                                                - to_block\n                                                - find:\n                                                    path: productimages\n                                                    do:\n                                                    - parse:\n                                                        format: html\n                                                    - variable_set: imghtml\n                                                - find:\n                                                    path: variants > productstylecolors > productstylecolorimages\n                                                    do:\n                                                    - parse\n                                                    - normalize:\n                                                        routine: lower\n                                                    - variable_set: imgpath\n                                                    - register_set: \n<div><\/div>\n                                                    - to_block\n                                                    - find:\n                                                        path: safe_\n                                                        do:\n                                                        - variable_clear: getit\n                                                        - find:\n                                                            path: xlarge\n                                                            do:\n                                                            - parse\n                                                            - if:\n                                                                match: (\\S)\n                                                                do:\n                                                                - variable_set:\n                                                                    field: getit\n                                                                    value: 1\n                                                                - normalize:\n                                                                    routine: url\n                                                                - object_field_set:\n                                                                    object: product\n                                                                    field: images\n                                                                    joinby: &quot;|&quot;\n                                                        - variable_get: getit\n                                                        - if:\n                                                            match: (1)\n                                                            else:\n                                                            - find:\n                                                                path: large\n                                                                do:\n                                                                - parse\n                                                                - if:\n                                                                    match: (\\S)\n                                                                    do:\n                                                                    - variable_set:\n                                                                        field: getit\n                                                                        value: 1\n                                                                    - normalize:\n                                                                        routine: url\n                                                                    - object_field_set:\n                                                                        object: product\n                                                                        field: images\n                                                                        joinby: &quot;|&quot;\n                                                        - variable_get: getit    \n                                                        - if:\n                                                            match: (1)\n                                                            else:\n                                                            - find:\n                                                                path: medium\n                                                                do:\n                                                                - parse\n                                                                - if:\n                                                                    match: (\\S)\n                                                                    do:\n                                                                    - variable_set:\n                                                                        field: getit\n                                                                        value: 1\n                                                                    - normalize:\n                                                                        routine: url\n                                                                    - object_field_set:\n                                                                        object: product\n                                                                        field: images\n                                                                        joinby: &quot;|&quot;\n                                                        - variable_get: getit\n                                                        - if:\n                                                            match: (1)\n                                                            else:\n                                                            - find:\n                                                                path: small\n                                                                do:\n                                                                - parse\n                                                                - if:\n                                                                    match: (\\S)\n                                                                    do:\n                                                                    - variable_set:\n                                                                        field: getit\n                                                                        value: 1\n                                                                    - normalize:\n                                                                        routine: url\n                                                                    - object_field_set:\n                                                                        object: product\n                                                                        field: images\n                                                                        joinby: &quot;|&quot;\n                                                - find:\n                                                    path: body_safe > variants > productstylecolors > colorname\n                                                    do:\n                                                    - parse\n                                                    - if:\n                                                        match: (\\S)\n                                                        do:\n                                                        - object_field_set:\n                                                            object: product\n                                                            field: variations\n                                                            joinby: &quot;|&quot;\n                                                - find:\n                                                    path: body_safe > name\n                                                    do:       \n                                                    - parse\n                                                    - if:\n                                                        match: (\\S)\n                                                        do:\n                                                        - object_field_set:\n                                                            object: product\n                                                            field: name\n                                                - find:\n                                                    path: body_safe > currentmaxprice, body_safe > currentminprice\n                                                    do:\n                                                    - parse:\n                                                        filter:\n                                                            - (\\d+\\.?\\d*)\n                                                    - if:\n                                                        match: (\\d+)\n                                                        do:\n                                                        - object_field_set:\n                                                            object: product\n                                                            field: price\n                                                            type: float\n                                                        - register_set: USD\n                                                        - object_field_set:\n                                                            object: product\n                                                            field: currency\n                                                - find:\n                                                    path: styleid\n                                                    slice: 0\n                                                    do:\n                                                    - parse\n                                                    - object_field_set:\n                                                        object: product\n                                                        field: sku\n                                            - find:\n                                                path: body\n                                                do: \n                                                - find:\n                                                    path: &#039;.selected&#039;\n                                                    do:\n                                                    - parse\n                                                    - space_dedupe\n                                                    - trim\n                                                    - object_field_set:\n                                                        object: product\n                                                        field: category\n                                                        joinby: &quot;|&quot;\n                                                - variable_get: catname\n                                                - if:\n                                                    match: (\\S)\n                                                    do:\n                                                    - object_field_set:\n                                                        object: product\n                                                        field: category\n                                                        joinby: &quot;|&quot;\n                                                - variable_get: catname2\n                                                - if:\n                                                    match: (\\S)\n                                                    do:\n                                                    - object_field_set:\n                                                        object: product\n                                                        field: category\n                                                        joinby: &quot;|&quot;\n                                                - variable_get: catname3\n                                                - if:\n                                                    match: (\\S)\n                                                    do:\n                                                    - object_field_set:\n                                                        object: product\n                                                        field: category\n                                                        joinby: &quot;|&quot;\n                                            - object_save:\n                                                name: product<\/code><\/pre>\n<h3>Sample of scraped data<\/h3>\n<p>Below is a sample of a dataset with several products in JSON format (so you can easily review it and see data structure). The dataset can be downloaded as CSV, XLSX, XML, or any other text format using the templates.<\/p>\n<pre><code class=\"language-js\">[{\n    &quot;product&quot;: {\n        &quot;brand&quot;: &quot;athleta&quot;,\n        &quot;category&quot;: &quot;New Arrivals|CATEGORIES|All New Arrivals&quot;,\n        &quot;currency&quot;: &quot;USD&quot;,\n        &quot;date&quot;: &quot;2017-12-06T19:35:53.451Z&quot;,\n        &quot;description&quot;: &quot;Easy Cozy Karma Jacket, New Arrivals, New Arrivals All New Arrivals, Athleta&quot;,\n        &quot;images&quot;: &quot;http:\/\/athleta.gap.com\/webcontent\/0014\/295\/432\/cn14295432.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/469\/cn14295469.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/464\/cn14295464.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/460\/cn14295460.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/509\/387\/cn14509387.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/088\/415\/cn14088415.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/469\/cn14295469.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/464\/cn14295464.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/460\/cn14295460.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/509\/387\/cn14509387.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/130\/170\/cn14130170.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/469\/cn14295469.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/464\/cn14295464.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/460\/cn14295460.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/509\/387\/cn14509387.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/068\/604\/cn14068604.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/469\/cn14295469.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/464\/cn14295464.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/460\/cn14295460.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/509\/387\/cn14509387.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/432\/cn14295432.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/469\/cn14295469.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/464\/cn14295464.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/460\/cn14295460.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/509\/387\/cn14509387.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/088\/415\/cn14088415.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/469\/cn14295469.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/464\/cn14295464.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/460\/cn14295460.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/509\/387\/cn14509387.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/130\/170\/cn14130170.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/469\/cn14295469.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/464\/cn14295464.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/460\/cn14295460.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/509\/387\/cn14509387.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/068\/604\/cn14068604.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/469\/cn14295469.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/464\/cn14295464.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/460\/cn14295460.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/509\/387\/cn14509387.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/432\/cn14295432.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/469\/cn14295469.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/464\/cn14295464.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/460\/cn14295460.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/509\/387\/cn14509387.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/088\/415\/cn14088415.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/469\/cn14295469.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/464\/cn14295464.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/460\/cn14295460.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/509\/387\/cn14509387.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/130\/170\/cn14130170.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/469\/cn14295469.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/464\/cn14295464.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/460\/cn14295460.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/509\/387\/cn14509387.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/068\/604\/cn14068604.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/469\/cn14295469.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/464\/cn14295464.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/295\/460\/cn14295460.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/509\/387\/cn14509387.jpg&quot;,\n        &quot;name&quot;: &quot;Easy Cozy Karma Jacket&quot;,\n        &quot;price&quot;: 118,\n        &quot;sku&quot;: &quot;158372&quot;,\n        &quot;url&quot;: &quot;http:\/\/athleta.gap.com\/browse\/product.do?pid=158372&cid=1006482&quot;,\n        &quot;variations&quot;: &quot;White Heather|Charcoal Heather|Cassis Heather|Black|White Heather|Charcoal Heather|Cassis Heather|Black|White Heather|Charcoal Heather|Cassis Heather|Black&quot;\n    }\n}\n,{\n    &quot;product&quot;: {\n        &quot;brand&quot;: &quot;athleta&quot;,\n        &quot;category&quot;: &quot;New Arrivals|CATEGORIES|All New Arrivals&quot;,\n        &quot;currency&quot;: &quot;USD&quot;,\n        &quot;date&quot;: &quot;2017-12-06T19:35:56.279Z&quot;,\n        &quot;description&quot;: &quot;Velour Hoodie, New Arrivals, New Arrivals All New Arrivals, Athleta&quot;,\n        &quot;images&quot;: &quot;http:\/\/athleta.gap.com\/webcontent\/0014\/120\/934\/cn14120934.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/121\/309\/cn14121309.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/449\/374\/cn14449374.jpg&quot;,\n        &quot;name&quot;: &quot;Velour Hoodie&quot;,\n        &quot;price&quot;: 118,\n        &quot;sku&quot;: &quot;158403&quot;,\n        &quot;url&quot;: &quot;http:\/\/athleta.gap.com\/browse\/product.do?pid=158403&cid=1006482&quot;,\n        &quot;variations&quot;: &quot;Charcoal Grey Heather&quot;\n    }\n}\n,{\n    &quot;product&quot;: {\n        &quot;brand&quot;: &quot;athleta&quot;,\n        &quot;category&quot;: &quot;New Arrivals|CATEGORIES|All New Arrivals&quot;,\n        &quot;currency&quot;: &quot;USD&quot;,\n        &quot;date&quot;: &quot;2017-12-06T19:35:57.948Z&quot;,\n        &quot;description&quot;: &quot;Luxe Stronger Hoodie, New Arrivals, New Arrivals All New Arrivals, Athleta&quot;,\n        &quot;images&quot;: &quot;http:\/\/athleta.gap.com\/webcontent\/0012\/348\/901\/cn12348901.jpg|http:\/\/athleta.gap.com\/webcontent\/0012\/302\/897\/cn12302897.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/522\/557\/cn14522557.jpg|http:\/\/athleta.gap.com\/webcontent\/0012\/204\/913\/cn12204913.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/422\/795\/cn14422795.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/422\/782\/cn14422782.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/422\/795\/cn14422795.jpg|http:\/\/athleta.gap.com\/webcontent\/0012\/302\/897\/cn12302897.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/522\/557\/cn14522557.jpg|http:\/\/athleta.gap.com\/webcontent\/0012\/204\/913\/cn12204913.jpg|http:\/\/athleta.gap.com\/webcontent\/0012\/302\/088\/cn12302088.jpg|http:\/\/athleta.gap.com\/webcontent\/0012\/302\/897\/cn12302897.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/522\/557\/cn14522557.jpg|http:\/\/athleta.gap.com\/webcontent\/0012\/204\/913\/cn12204913.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/422\/795\/cn14422795.jpg|http:\/\/athleta.gap.com\/webcontent\/0012\/348\/901\/cn12348901.jpg|http:\/\/athleta.gap.com\/webcontent\/0012\/302\/897\/cn12302897.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/522\/557\/cn14522557.jpg|http:\/\/athleta.gap.com\/webcontent\/0012\/204\/913\/cn12204913.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/422\/795\/cn14422795.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/422\/782\/cn14422782.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/422\/795\/cn14422795.jpg|http:\/\/athleta.gap.com\/webcontent\/0012\/302\/897\/cn12302897.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/522\/557\/cn14522557.jpg|http:\/\/athleta.gap.com\/webcontent\/0012\/204\/913\/cn12204913.jpg|http:\/\/athleta.gap.com\/webcontent\/0012\/348\/901\/cn12348901.jpg|http:\/\/athleta.gap.com\/webcontent\/0012\/302\/897\/cn12302897.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/522\/557\/cn14522557.jpg|http:\/\/athleta.gap.com\/webcontent\/0012\/204\/913\/cn12204913.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/422\/795\/cn14422795.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/422\/782\/cn14422782.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/422\/795\/cn14422795.jpg|http:\/\/athleta.gap.com\/webcontent\/0012\/302\/897\/cn12302897.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/522\/557\/cn14522557.jpg|http:\/\/athleta.gap.com\/webcontent\/0012\/204\/913\/cn12204913.jpg&quot;,\n        &quot;name&quot;: &quot;Luxe Stronger Hoodie&quot;,\n        &quot;price&quot;: 148,\n        &quot;sku&quot;: &quot;456789&quot;,\n        &quot;url&quot;: &quot;http:\/\/athleta.gap.com\/browse\/product.do?pid=456789&cid=1006482&quot;,\n        &quot;variations&quot;: &quot;Oatmeal Heather|Black Multi|Black|Oatmeal Heather|Black Multi|Oatmeal Heather|Black Multi&quot;\n    }\n}\n,{\n    &quot;product&quot;: {\n        &quot;brand&quot;: &quot;athleta&quot;,\n        &quot;category&quot;: &quot;New Arrivals|CATEGORIES|All New Arrivals&quot;,\n        &quot;currency&quot;: &quot;USD&quot;,\n        &quot;date&quot;: &quot;2017-12-06T19:36:03.291Z&quot;,\n        &quot;description&quot;: &quot;Stronger Long Hoodie, New Arrivals, New Arrivals All New Arrivals, Athleta&quot;,\n        &quot;images&quot;: &quot;http:\/\/athleta.gap.com\/webcontent\/0014\/365\/879\/cn14365879.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/365\/874\/cn14365874.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/330\/558\/cn14330558.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/365\/856\/cn14365856.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/365\/874\/cn14365874.jpg|http:\/\/athleta.gap.com\/webcontent\/0014\/330\/558\/cn14330558.jpg&quot;,\n        &quot;name&quot;: &quot;Stronger Long Hoodie&quot;,\n        &quot;price&quot;: 138,\n        &quot;sku&quot;: &quot;158356&quot;,\n        &quot;url&quot;: &quot;http:\/\/athleta.gap.com\/browse\/product.do?pid=158356&cid=1006482&quot;,\n        &quot;variations&quot;: &quot;Light Grey Multi|Black Multi&quot;\n    }\n}]\n<\/code><\/pre>","protected":false},"excerpt":{"rendered":"<p>Athleta is a subsidiary of Gap Corporation, which develops, manufactures and sells women\u2019s and children\u2019s clothes for sports and active life. This free web scraper collects data about all the products presented in the athleta.gap.com online store. Approx number of goods: 20000 Approx number of page requests: 20000 Recommended subscription plan: X-Small PLEASE NOTE! The [&hellip;]<\/p>","protected":false},"author":4,"featured_media":324,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[31,30,2],"tags":[],"class_list":["post-322","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ecommerce-scraping","category-free-scrapers","category-web-scraping"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.diggernaut.com\/blog\/wp-json\/wp\/v2\/posts\/322","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.diggernaut.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.diggernaut.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.diggernaut.com\/blog\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.diggernaut.com\/blog\/wp-json\/wp\/v2\/comments?post=322"}],"version-history":[{"count":3,"href":"https:\/\/www.diggernaut.com\/blog\/wp-json\/wp\/v2\/posts\/322\/revisions"}],"predecessor-version":[{"id":654,"href":"https:\/\/www.diggernaut.com\/blog\/wp-json\/wp\/v2\/posts\/322\/revisions\/654"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.diggernaut.com\/blog\/wp-json\/wp\/v2\/media\/324"}],"wp:attachment":[{"href":"https:\/\/www.diggernaut.com\/blog\/wp-json\/wp\/v2\/media?parent=322"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.diggernaut.com\/blog\/wp-json\/wp\/v2\/categories?post=322"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.diggernaut.com\/blog\/wp-json\/wp\/v2\/tags?post=322"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}