Deb Shops — онлайн ритэйлер, ранее работавший как специализированная сеть ритэйл магазинов в США, продающий одежду и аксессуары для женщий под своей и другими торговыми марками.Компания базировалась в Филадельфии, Пенсильвания и главным образом обслуживала молодых девушек и женщин плюс-сайз в возрасте от 13 до 29 лет. На пике своего триумфа Deb Shops управлял 337 магазинами в 42 штатах. Со временим магазин стал продавать одежду исключительно размера плюс-сайз. Парсер товаров и цен позволит вам собрать информацию о всех товарах, представленных в интернет-магазине debshops.com.
Примерное количество товаров: 1700
Примерное количество запросов: 7000
Рекомендуемый план подписки: X-Small
ВНИМАНИЕ! Количество запросов может превышать количество товаров, потому что данные о вариациях, изображениях и др. могут парсится используя запросы к дополнительным ресурсам. Также часть данных о товаре может доставляться с помощью XHR запросов, что также увеличивает общее количество необходимых запросов.
Как пользоваться парсером информации о товарах и ценах c сайта debshops.com
Для использования парсера информации с сайта магазина Deb Shops вы должны иметь учетную запись в нашем сервисе Diggernaut.
- Пройдите по этой ссылке для регистрации в сервисе Diggernaut
- После регистрации и подтверждения email адреса войдите в свою учетную запись
- Создайте проект с любый именем и описанием, если вы не знаете как, обратитесь к нашей документации
- Войдите во вновь созданный проект и создайте в нем диггер с любым именем, если вы не знаете как, обратитесь к нашей документации
- Скопируйте в буфер обмена приведенный ниже сценарий диггера и вставьте его в созданный вами диггер, если вы не знаете как, обратитесь к нашей документации
- Переключите режим работы диггера с Debug на Active, если вы не знаете как, обратитесь к нашей документации
- Запустите ваш диггер и дождитесь окончания его работы, если вы не знаете как, обратитесь к нашей документации
- Скачайте собранный набор данных в нужном вам формате, если вы не знаете как, обратитесь к нашей документации
В дальнейшем вы можете установить расписание для запуска вашего парсера и забирать информацию регулярно.
Сценарий парсера
---
config:
debug: 2
agent: Firefox
do:
- walk:
to: http://www.debshops.com
do:
- find:
path: a.topmenulink
do:
- parse:
attr: href
- space_dedupe
- trim
- if:
match: \/category\/
do:
- normalize:
routine: url
- register_set: <%register%>/1/
- link_add:
pool: catalog
- walk:
to: links
pool: catalog
do:
- find:
path: div.pull-right>table
slice: 0
do:
- find:
path: td>a
do:
- parse:
attr: href
- if:
match: \d+
do:
- link_add:
pool: catalog
- find:
path: div.prdImg>a.imgList
do:
- parse:
attr: href
- normalize:
routine: replace_substring
args:
_\d+$: ''
- link_add:
pool: pages
- walk:
to: links
headers:
referer: ''
pool: pages
do:
- sleep: 3
- find:
path: 'div#center'
do:
- variable_clear: pid
- object_new: product
- eval:
routine: js
body: '(function (){var d = new Date(); return d.toISOString()})();'
- object_field_set:
object: product
field: date
- static_get: url
- object_field_set:
object: product
field: url
- find:
path: span.price
do:
- parse:
filter: ([0-9\.]+)
- object_field_set:
object: product
type: float
field: price
- parse
- normalize:
routine: replace_matched
args:
\$: USD
- object_field_set:
object: product
field: currency
- find:
path: div.productstyleNew.visible-xs
do:
- parse:
filter: (\d+)
- variable_set: pid
- object_field_set:
object: product
field: sku
- find:
path: div.productnameNew.visible-xs
do:
- parse
- normalize:
routine: replace_substring
args:
- \s*[[:space:]]+: ' '
- ^\s+|\s+$: ''
- object_field_set:
object: product
field: name
- find:
path: 'div#tab-description'
do:
- split:
context: html
delimiter:
- find:
path: div.splitted
slice: 0
do:
- parse
- normalize:
routine: replace_substring
args:
- \s*[[:space:]]+: ' '
- ^\s+|\s+$: ''
- object_field_set:
object: product
field: description
- find:
path: ol.breadcrumb>li.active>a
do:
- parse
- normalize:
routine: replace_substring
args:
- \s*[[:space:]]+: ' '
- ^\s+|\s+$: ''
- object_field_set:
object: product
joinby: "|"
field: categories
- walk:
to:
json: http://www.debshops.com/Products/ProductDetail.aspx/GetColors
data:
StyleId: <%pid%>
do:
- find:
path: d
do:
- parse
- to_block
- find:
path: img.colorthumb
do:
- parse:
attr: alt
- normalize:
routine: replace_substring
args:
- \s*[[:space:]]+: ' '
- ^\s+|\s+$: ''
- if:
match: \w+
do:
- object_field_set:
object: product
joinby: "|"
field: variations
- parse:
attr: id
- variable_set: cid
- walk:
to:
json: http://www.debshops.com/Products/ProductDetail.aspx/GetImages
data:
Color_Id: <%cid%>
do:
- find:
path: d
do:
- parse
- to_block
- find:
path: img.productdetail_image_display
do:
- parse:
attr: data-zoom-image
- object_field_set:
object: product
joinby: "|"
field: images
- register_set: Debshops
- object_field_set:
object: product
field: brand
- object_save:
name: product
Пример данных, собранных парсером с сайта
Ниже приведен пример датасета с несколькими товарами в формате JSON (для наглядности). Датасет может быть скачан и как CSV, XLSX, XML, и любой другой текстовый формат используя темплейтный подход.
[{
"product": {
"brand": "Debshops",
"categories": "Plus Clothing|Casual",
"currency": "USD",
"date": "2018-01-11T18:09:37.840Z",
"description": "Pretty little dress! A chic and cute shift dress featuring a floral print all throughout.",
"images": "https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008507_010_1.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008507_010_2.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008507_010_3.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008507_010_4.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008507_010_5.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008507_060_1.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008507_060_2.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008507_060_3.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008507_060_4.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008507_060_5.jpg",
"name": "Plus Size Floral Pocket Shift Dress",
"price": 37.95,
"sku": "1008507",
"url": "http://www.debshops.com/PlusSize/Plus+Size+Floral+Pocket+Shift+Dress%7C1008507",
"variations": "Grey|Mauve"
}
}
,{
"product": {
"brand": "Debshops",
"categories": "Plus Clothing|Leggings",
"currency": "USD",
"date": "2018-01-11T18:09:42.172Z",
"description": "What you kneed in your wardrobe! Essential and sporty leggings featuring slits on the knees.",
"images": "https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008546_001_1.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008546_001_2.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008546_001_3.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008546_001_4.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008546_003_1.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008546_003_2.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008546_003_3.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008546_003_4.jpg",
"name": "Plus Size Knee Slit Leggings",
"price": 19.95,
"sku": "1008546",
"url": "http://www.debshops.com/PlusSize/Plus+Size+Knee+Slit+Leggings%7C1008546",
"variations": "Black|Charcoal"
}
}
,{
"product": {
"brand": "Debshops",
"categories": "Plus Clothing|Maxi",
"currency": "USD",
"date": "2018-01-11T18:09:46.052Z",
"description": "Boho goddess! A stunning maxi dress featuring an elastic waist with a crochet inset.",
"images": "https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008537_005_1.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008537_005_2.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008537_005_3.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008537_005_4.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008537_005_5.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008537_046_1.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008537_046_2.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008537_046_3.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008537_046_4.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008537_046_5.jpg",
"name": "Plus Size Floral Crochet Waist Slit Maxi Dress",
"price": 44.95,
"sku": "1008537",
"url": "http://www.debshops.com/PlusSize/Plus+Size+Floral+Crochet+Waist+Slit+Maxi+Dress%7C1008537",
"variations": "Navy|Cream"
}
}
,{
"product": {
"brand": "Debshops",
"categories": "Plus Clothing|Casual",
"currency": "USD",
"date": "2018-01-11T18:09:49.935Z",
"description": "Your cup of tee! A chic and trendy tee featuring floral embroidered short sleeves.",
"images": "https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008472_007_1.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008472_007_2.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008472_007_3.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008472_007_4.jpg|https://s3-us-west-2.amazonaws.com/msrealness/ItemZoom/1008472_007_5.jpg",
"name": "Plus Size Floral Embroidered Sleeve Tee",
"price": 29.95,
"sku": "1008472",
"url": "http://www.debshops.com/PlusSize/Plus+Size+Floral+Embroidered+Sleeve+Tee%7C1008472",
"variations": "Taupe"
}
}]