Skip to content

tarasverq/AliexpressItemsParser

Repository files navigation

Nuget

AliexpressItemsParser

C# library for retrieving AliExpress items data.

Example output
{
  "id": "1005002715141420",
  "url": "https://aliexpress.com/item/1005002715141420.html",
  "gallery": [
    {
      "imageUrl": "https://ae04.alicdn.com/kf/Hb6d5daef4aa24a618739d3fe04f1b901p/Teclast-F7-Plus-3-14-1-1920-x-1080-8-256-SSD-Intel.png",
      "previewUrl": "https://ae04.alicdn.com/kf/Hb6d5daef4aa24a618739d3fe04f1b901p/Teclast-F7-Plus-3-14-1-1920-x-1080-8-256-SSD-Intel.png_50x50.png",
      "videoUrl": "https://cloud.video.taobao.com/play/u/2201449938851/p/1/e/6/t/10301/313713390597.mp4`"
    },
    {
      "imageUrl": "https://ae04.alicdn.com/kf/H0129bc802f56422cb07ef02a2c951d49a/Teclast-F7-Plus-3-14-1-1920-x-1080-8-256-SSD-Intel.jpg",
      "previewUrl": "https://ae04.alicdn.com/kf/H0129bc802f56422cb07ef02a2c951d49a/Teclast-F7-Plus-3-14-1-1920-x-1080-8-256-SSD-Intel.jpg_50x50.jpg",
      "videoUrl": null
    },
    {
      "imageUrl": "https://ae04.alicdn.com/kf/Hc1fe5d9c0e1d40ceab0ecba062fdee32i/Teclast-F7-Plus-3-14-1-1920-x-1080-8-256-SSD-Intel.jpg",
      "previewUrl": "https://ae04.alicdn.com/kf/Hc1fe5d9c0e1d40ceab0ecba062fdee32i/Teclast-F7-Plus-3-14-1-1920-x-1080-8-256-SSD-Intel.jpg_50x50.jpg",
      "videoUrl": null
    },
    {
      "imageUrl": "https://ae04.alicdn.com/kf/H0df6aa8c3c5d4709befcf7d07e378a93C/Teclast-F7-Plus-3-14-1-1920-x-1080-8-256-SSD-Intel.jpg",
      "previewUrl": "https://ae04.alicdn.com/kf/H0df6aa8c3c5d4709befcf7d07e378a93C/Teclast-F7-Plus-3-14-1-1920-x-1080-8-256-SSD-Intel.jpg_50x50.jpg",
      "videoUrl": null
    },
    {
      "imageUrl": "https://ae04.alicdn.com/kf/Hc840a12411fd45e497f12bec5e5d2e715/Teclast-F7-Plus-3-14-1-1920-x-1080-8-256-SSD-Intel.jpg",
      "previewUrl": "https://ae04.alicdn.com/kf/Hc840a12411fd45e497f12bec5e5d2e715/Teclast-F7-Plus-3-14-1-1920-x-1080-8-256-SSD-Intel.jpg_50x50.jpg",
      "videoUrl": null
    },
    {
      "imageUrl": "https://ae04.alicdn.com/kf/Hd365791feff74451b717c07f7c63c647S/Teclast-F7-Plus-3-14-1-1920-x-1080-8-256-SSD-Intel.jpg",
      "previewUrl": "https://ae04.alicdn.com/kf/Hd365791feff74451b717c07f7c63c647S/Teclast-F7-Plus-3-14-1-1920-x-1080-8-256-SSD-Intel.jpg_50x50.jpg",
      "videoUrl": null
    }
  ],
  "name": "Ноутбук Teclast F7 Plus 3 14,1 \"1920 x 1080 8 ГБ ОЗУ 256 ГБ SSD Intel Gemini Lake N4120 Windows 10 Двухдиапазонный ноутбук с Wi-Fi USB 3.0",
  "description": "Ноутбук Teclast F7 Plus 3 14,1 \"1920 x 1080 8 ГБ ОЗУ 256 ГБ SSD Intel Gemini Lake N4120 Windows 10 Двухдиапазонный ноутбук с Wi-Fi USB 3.0, Наслаждайся ✓Бесплатная доставка по всему миру! ✓Предложение ограничено по времени! ✓Удобный возврат!\nНаслаждайся ✓Бесплатная доставка по всему миру! ✓Предложение ограничено по времени! ✓Удобный возврат!",
  "likes": 1192,
  "price": "28 882,22 - 28 989,33 руб.",
  "rating": 4.6,
  "reviews_count": "122",
  "storeUrl": "https://www.aliexpress.ru/store/5085293",
  "sellerId": "238866579",
  "reviews": [
    {
      "id": "20032903251494156",
      "username": "M***a",
      "userUrl": "https://feedback.aliexpress.ru/display/detail.htm?ownerMemberId=780694156&memberType=buyer",
      "rating": 5,
      "country": "ru",
      "text": "Лэптоп F7plus3 от Teclast -пушка страшная! крайне даволен покупкой, производителем и продавцом, спасибо большое! Экспресс-доставка из РФ - просто супер, быстро и курьер DPD доставил прям на дом. За сумму за которую приобрёл его 11.11 - это более, чем хороший аппарат! Жалею только, что нужно было их заказать несколько по той цене и раздавить близким",
      "date": "21 ноя 2021 07:04",
      "gallery": [
        "https://ae01.alicdn.com/kf/U59f78d4d706442dc8c35c8bf7348d311F.jpg",
        "https://ae01.alicdn.com/kf/U511c77fe64c847b882fe4e745c9117c2f.jpg",
        "https://ae01.alicdn.com/kf/U165f57bac35144edaf3b22e759188be6x.jpg",
        "https://ae01.alicdn.com/kf/Uae5872442eee4089943e4d71a24be25fL.jpg",
        "https://ae01.alicdn.com/kf/U63df8dd637fc4c9786408e4be0f2071ap.jpg"
      ]
    },
    {
      "id": "20031088307835462",
      "username": "R***r",
      "userUrl": "https://feedback.aliexpress.ru/display/detail.htm?ownerMemberId=1968735462&memberType=buyer",
      "rating": 5,
      "country": "ru",
      "text": "Доставка из России быстрая,курьер привез раньше на два дня.Продавец общительный,рекомендую.Описанию соответствует.Упаковка хорошая,комплект вилок к адаптеру зарядки. После проверки дополню отзыв.",
      "date": "05 окт 2021 19:28",
      "gallery": [
        "https://ae01.alicdn.com/kf/U2af5d250c0944e8ebdcd3b8450461c14h.jpg",
        "https://ae01.alicdn.com/kf/U71b8f126278d4360ac784c29ba2ecc02z.jpg",
        "https://ae01.alicdn.com/kf/U67f0487eb5f64599b5dbb01fd62e40c4m.jpg",
        "https://ae01.alicdn.com/kf/Ua855d5b6b3214a399162850b39a3f63c4.jpg",
        "https://ae01.alicdn.com/kf/Ua32d69c62611449eb319b1e33cc0d0e1c.jpg"
      ]
    },
    {
      "id": "60030760134467864",
      "username": "R***r",
      "userUrl": "https://feedback.aliexpress.ru/display/detail.htm?ownerMemberId=2440967864&memberType=buyer",
      "rating": 5,
      "country": "ru",
      "text": "Доставили 6 дней, и продавец очень хорошо ответит на мои вопросы.\nНоутбук отличного качества! Ноутбук защищен большой подушкой в коробке, поэтому никаких повреждений во время доставки нет! Мне нравится цвет и дизайн! Я удивлен, насколько тонкий и легкий ноутбук и качество на ощупь отличное! Отлично подходит для меня! В основном я использую его для школьных классов, поэтому хочу большой экран. Мне нравится, что экран действительно большой для класса, на нем все выглядит красиво! Звук также довольно громкий! Большая клавиатура отлично подходит для ввода домашней работы! Все работает очень быстро из-за 8 Гб оперативной памяти! Батарея работает в течение 6 часов, не могу попросить больше!\nНастоятельно рекомендуем!",
      "date": "02 сен 2021 01:56",
      "gallery": [
        "https://ae01.alicdn.com/kf/Ueaefce34b21342e096452fd473ffdd85U.jpeg",
        "https://ae01.alicdn.com/kf/U958d75c9e28f47398ec02c7eedd5f4874.jpeg",
        "https://ae01.alicdn.com/kf/U25e83c378cf74e6f96c3382ff4864ddeO.jpeg",
        "https://ae01.alicdn.com/kf/U06ecee5100204f6cba322c369e8e5c2c2.jpeg",
        "https://ae01.alicdn.com/kf/U1faaaa7726934fe28a55ed2f07d14449u.jpeg"
      ]
    },
    {
      "id": "20032991311233665",
      "username": "A***n",
      "userUrl": "https://feedback.aliexpress.ru/display/detail.htm?ownerMemberId=748033665&memberType=buyer",
      "rating": 5,
      "country": "ru",
      "text": "Очень быстрая доставка. Ноут внешне красивый. Сразу все включилось, загрузилось и заработало. Наклейки на клаву в комплекте. О работе ноута и его недостатках и достоинствах дополню позже.",
      "date": "21 ноя 2021 05:56",
      "gallery": [
        "https://ae01.alicdn.com/kf/U48c7a05574d34997a79435565bc124aeA.jpg",
        "https://ae01.alicdn.com/kf/U35c9e1d227f44a9999928386085a65d7D.jpg",
        "https://ae01.alicdn.com/kf/Uc77c293c701f41ea965678a16dffd012V.jpg",
        "https://ae01.alicdn.com/kf/U362436f03f6c405f825bba872b96c04eY.jpg",
        "https://ae01.alicdn.com/kf/U6315a8fa50ad44d6a5394b4b6f8a072eb.jpg"
      ]
    },
    {
      "id": "20033851195132770",
      "username": "A***v",
      "userUrl": "https://feedback.aliexpress.ru/display/detail.htm?ownerMemberId=196032770&memberType=buyer",
      "rating": 5,
      "country": "ru",
      "text": "Купил на Чёрную пятницу, думал долго будет доставка, но продавец молодец, отправил в этот же день. До Оренбурга дошло за пять дней, пришло на почту, упаковка не помялась. Фирменная упаковка надёжная, проложена поролоном. Планировал сразу сделать лазерную гравировку клавиатуры, но увы НЕ ПОЛУЧИЛОСЬ, качество пластика не подошло, буквы получаются незаметными. Пришлось использовать наклейки, которые были в комплекте. Получилось сносно, колхоз есть колхоз. При наклеивании обязательно надо обезжирить клавиатуру и пользоваться пинцетом  Пришлось посуетится и найти спирт и пинцет. Пользоваться растворителем не рискнул. Процесс наклейки прошол легко. Ноутбук предназначен в подарок женщине, которой нужен только Ютюб, Одноклассники и т.п., с этой ролью он справляется на отлично. Пришел наполовину заряженным, в Ютубе не зависает в 4 к, экран отличный, понравился. Заряжается долго, около трёх часов. Вроде все.",
      "date": "06 дек 2021 23:31",
      "gallery": [
        "https://ae01.alicdn.com/kf/U71aa95379261442586ba71dfc1ba0a0e9.jpg",
        "https://ae01.alicdn.com/kf/U5a4dfede29534afa883765137255f89aP.jpg"
      ]
    },
    {
      "id": "20033680618275337",
      "username": "Z***v",
      "userUrl": "https://feedback.aliexpress.ru/display/detail.htm?ownerMemberId=131975337&memberType=buyer",
      "rating": 5,
      "country": "ru",
      "text": "Первое впечатление очень хорошее. Посмотрим как себя покажет в пользовании",
      "date": "30 ноя 2021 16:36",
      "gallery": [
        "https://ae01.alicdn.com/kf/U1f416e4cc05e44b5b389a65920bdbfc24.jpg"
      ]
    },
    {
      "id": "60031618625686821",
      "username": "P***e",
      "userUrl": "https://feedback.aliexpress.ru/display/detail.htm?ownerMemberId=2358386821&memberType=buyer",
      "rating": 5,
      "country": "ru",
      "text": "Хороший ноутбук. Хорошее качество ноутбука.",
      "date": "11 сен 2021 01:15",
      "gallery": [
        "https://ae01.alicdn.com/kf/Ucc814a9548c14523a433f90ae60fa2c8z.jpeg",
        "https://ae01.alicdn.com/kf/U2b1d7699bbe14c768759023572b0c0e6e.jpeg",
        "https://ae01.alicdn.com/kf/Ue58b1b849b7043558b0c46550448a91e9.jpg",
        "https://ae01.alicdn.com/kf/U6504874d7fa9406b86fbe9433c17caf50.jpeg"
      ]
    },
    {
      "id": "20033939737709182",
      "username": "K***o",
      "userUrl": "https://feedback.aliexpress.ru/display/detail.htm?ownerMemberId=725209182&memberType=buyer",
      "rating": 5,
      "country": "ru",
      "text": "Хороший ультрабук, ребенок доволен, брали по акции, за такую цену ни чего лучшего не найти.",
      "date": "10 дек 2021 03:57",
      "gallery": []
    },
    {
      "id": "20032949909825873",
      "username": "V***S",
      "userUrl": "https://feedback.aliexpress.ru/display/detail.htm?ownerMemberId=2696725873&memberType=buyer",
      "rating": 5,
      "country": "ru",
      "text": "Всё целое и работает.",
      "date": "18 ноя 2021 15:50",
      "gallery": [
        "https://ae01.alicdn.com/kf/Uab6018a8bdf9403ab9735faa77139966L.jpg"
      ]
    },
    {
      "id": "20034404413522495",
      "username": "V***v",
      "userUrl": "https://feedback.aliexpress.ru/display/detail.htm?ownerMemberId=719522495&memberType=buyer",
      "rating": 5,
      "country": "ru",
      "text": "Teclast F7 Plus 3 мой второй ноутбук от Teclast. На удивление линейка пошла в сторону увеличение толщины ноутбука. Ументшился размер тачпада, внешний вид стал более дешёвым. А так все исправно работает.",
      "date": "20 дек 2021 05:21",
      "gallery": []
    }
  ]
}

Library includes two implementations of IAliScraper which retrieves data string from site.

  • AliHttpScraper - this implementation uses HttpClient
  • AliSeleniumScraper - this implementation uses Selenium framework

AliHttpScraper uses workaround for dotnet runtime bug, so the working of this implementation is not fully guarantied.

Usage

dotnet add package AliexpressItemsParser

If you want to use Selenium framework implementation, then install also Selenium.WebDriver.ChromeDriver:

dotnet add package Selenium.WebDriver.ChromeDriver --version 97.0.4692.7100

Regular use

HttpClient implementation:

AliHttpScraper httpScraper = new AliHttpScraper();
AliParser aliexpressItemsParser = new AliParser(httpScraper);
AliexpressItem data = await aliexpressItemsParser.Parse(itemId);

Selenium framework implementation:

⚠ WARNING: Notice that AliSeleniumScraper is IDisposable. You must dispose it by yourself

using AliSeleniumScraper seleniumScraper = new AliSeleniumScraper();
AliParser aliexpressItemsParser = new AliParser(seleniumScraper);
AliexpressItem data = await aliexpressItemsParser.Parse(itemId);

DI usage

HttpClient implementation:

Services.AddScoped<IAliScraper, AliHttpScraper>();
Services.AddScoped<IAliParser, AliParser>();

Selenium framework implementation:

⚠ WARNING: Notice that AliSeleniumScraper is IDisposable. DI container will dispose object automatically

Services.AddScoped<IAliScraper, AliSeleniumScraper>();
builder.Services.AddScoped<IAliParser, AliParser>();

Then just inject IAliParser and use it:

AliexpressItem data = await _aliexpressItemsParser.Parse(itemId);

You can also check the examples in this repo:

  • AliexpressItemsParser.Runner - console app with regular usage
  • AliexpressItemsParser.WebApi - Web Api with DI

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages