Запрос цены товара с сайта apteka.ru

02.09.19

Интеграция - Сайты и интернет-магазины

Пример запроса для получения цены товара/лекарства с сайта apteka.ru

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Запрос цены товара с сайта apteka.ru:
.epf 7,30Kb
1
1 Скачать (1 SM) Купить за 1 850 руб.

Приветствую. Это пример для получения цены с сайта apteka.ru (без округления)

Тестировал на 1С:Розница Аптека 2.2.12.30, платформа 8.3.13.1865. Думаю, работать будет и на других. 
 

&НаКлиенте
Процедура УзнатьЦену(Команда)
    
    Штрихкод=ПолучитьШтрихкод();
    
    ssl = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows());      
    HTTPСоединение = Новый HTTPСоединение("apteka.ru",,,,,,ssl,);      
    Заголовки = Новый Соответствие;
    Заголовки.Вставить("Origin", "https://apteka.ru");
    Заголовки.Вставить("Accept-Language", "ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7"); 
    Заголовки.Вставить("X-Requested-With", "XMLHttpRequest");
    Заголовки.Вставить("DNT", "1"); 
    Заголовки.Вставить("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36");
    Заголовки.Вставить("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8"); 
    HTTPЗапрос = Новый HTTPЗапрос("/", Заголовки);
    Результат = HTTPСоединение.Получить(HTTPЗапрос);
    Cookie = Результат.Заголовки.Получить("Set-Cookie");     
    Cookie = СтрЗаменить(Cookie, ";", Символы.ПС);         
    Cookie = СтрПолучитьСтроку(Cookie, 1); 
    Заголовки.Вставить("Cookie", Cookie);
    ЗапросЧасть1 = "/search/?q=";
    ЗапросЧасть2 = ШтрихКод;
    ЗапросЧасть3 = "&order=products%2Cmaterials&vendor=";
    ИтоговойЗапрос = ЗапросЧасть1 + ЗапросЧасть2 + ЗапросЧасть3;
    HTTPЗапрос = Новый HTTPЗапрос(ИтоговойЗапрос, Заголовки);     
    HTTPЗапрос.УстановитьТелоИзСтроки(ИтоговойЗапрос, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать);    
    Ответ = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);     
    Ответ = Ответ.ПолучитьТелоКакСтроку("UTF-8");
    Ошибка404 = "page-404";
    ИщемОшибку404 = Найти(Ответ, Ошибка404); 
    Если ИщемОшибку404 = 0 Тогда     
        ЧтоИщемВСтроке = "data-price=";
        Позиция = Найти(Ответ, ЧтоИщемВСтроке);
        Длина = СтрДлина(Ответ);
        Ответ = Прав(Ответ, СтрДлина(Ответ)-Позиция-11);
        Ответ = Лев(Ответ, 11);  
        RegExp = Новый COMОбъект("VBScript.RegExp");        
        RegExp.IgnoreCase = Истина; //Игнорировать регистр 
        RegExp.Global = Истина; //Поиск всех вхождений шаблона 
        RegExp.MultiLine = Истина; //Многострочный режим 
        RegExp.Pattern = "[^0-9]"; // отбор только чисел          
        Ответ=RegExp.Replace(Ответ, "");            
        Ответ = Лев(Ответ, СтрДлина(Ответ)-2);
        Если Ответ <> "" Тогда
            Ответ = Число(Ответ);
            Ответ = Формат(Ответ, "ЧЦ=15");
            Ответ = Ответ + " руб.";
        КонецЕсли;
        Сообщить(Ответ);
    Иначе Сообщить("Товар не найден");
    КонецЕсли;   
    
КонецПроцедуры

&НаСервере
Функция ПолучитьШтрихкод();
    
    Запрос = Новый Запрос;
    Запрос.Текст = 
    "ВЫБРАТЬ ПЕРВЫЕ 1
    |    Штрихкоды.Штрихкод КАК Штрихкод
    |ИЗ
    |    РегистрСведений.Штрихкоды КАК Штрихкоды
    |ГДЕ
    |    Штрихкоды.Владелец = &Номенклатура";
    
    Запрос.УстановитьПараметр("Номенклатура", ЭтаФорма.Номенклатура);
    
    РезультатЗапроса = Запрос.Выполнить();
    
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        Штрихкод = ВыборкаДетальныеЗаписи.Штрихкод;
    КонецЦикла;
    
    Возврат Штрихкод;
    
КонецФункции

 

См. также

Сайты и интернет-магазины Платформа 1С v8.3 1С:Розница 3.0 Розничная и сетевая торговля (FMCG) Россия Платные (руб)

Готовое интеграционное решение для оплаты покупок Долями в 1C:Розница 3.0. Реализовано в виде расширения. Интеграция сервиса dolyame.ru для приема платежей в рассрочку. Поддерживает работу от разных юридических лиц. Работа: в составе РИБ, отдельно от РИБ, тонкий, толстый клиент, web-клиент (через интернет-браузер). Интегрировано в Чек ККМ, Рабочее место кассира (РМК)

24000 руб.

02.11.2024    1226    8    0    

7

Сайты и интернет-магазины Платформа 1С v8.3 1С:Розница 2 Розничная и сетевая торговля (FMCG) Россия Платные (руб)

Готовое интеграционное решение для оплаты покупок Долями в 1C:Розница 2.3. Реализовано в виде расширения. Интеграция сервиса dolyame.ru для приема платежей в рассрочку. Поддерживает работу от разных юридических лиц. Работа: в составе РИБ, отдельно от РИБ, тонкий, толстый клиент, web-клиент (через интернет-браузер).

22440 руб.

19.12.2023    7154    45    11    

41

Сайты и интернет-магазины Платформа 1С v8.3 1С:Розница 2 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Управленческий учет Платные (руб)

Склад Вашего магазина онлайн в Telegram. С картинками, ценами, описанием и характеристиками. Используйте Telegram как торговую площадку и увеличивайте продажи.

54000 руб.

10.09.2024    1361    3    4    

3

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь Платформа 1С v8.3 1C:Бухгалтерия 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    19241    23    22    

20

Прайсы Оптовая торговля Сайты и интернет-магазины Программист Пользователь Платформа 1С v8.3 Оперативный учет Управляемые формы 1С:Управление торговлей 11 Транспорт, автопарки, такси Управленческий учет Платные (руб)

Внешняя обработка адаптирована для 1C: УТ 11, предназначена для наполнения вашей базы данных товарами и сопутствующей информацией, предоставляемой b2b.4tochki.ru, обновления остатков и цен.

8160 руб.

31.01.2020    32385    17    7    

16

Сайты и интернет-магазины Программист Пользователь Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Платные (руб)

Данный модуль предоставляет возможность выгружать заказы из 1С: Управление торговлей 11 версии в "MEASOFT" (ранее "Курьерская служба 2008").

9600 руб.

27.04.2022    11838    21    3    

12
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. alex_bitti 98 02.09.19 12:08 Сейчас в теме
спасибо, может пригодиться, коротко и понятно
2. ip0593 20 02.09.19 14:42 Сейчас в теме
3. user858803 10.09.19 18:37 Сейчас в теме
жаль что у них нет штрихкода в карточке... а так было бы нааамного удобней.
в частности такое поле есть в еаптеке), можно было бы туда обратить свой взор
4. shura_a 11.09.19 16:35 Сейчас в теме
А как в запросе поменять регион?
Сейчас выдает цены Москвы.
5. ip0593 20 11.09.19 16:37 Сейчас в теме
(4) а если в браузере регион поменять? у меня цены моего региона выходят, но уже не помню, что я дополнительно для этого делал и делал ли вообще.
6. shura_a 11.09.19 16:42 Сейчас в теме
(5) В браузере поменян. а в обработке все равно Москва
7. shura_a 12.09.19 09:13 Сейчас в теме
(5) Может у тебя цена с Москвой совпадает?
8. ip0593 20 12.09.19 09:38 Сейчас в теме
(7) нет, не совпадает, именно для моего региона
9. ip0593 20 12.09.19 09:40 Сейчас в теме
(5) с разных устройств смотрел? может дело в ip-адресе, vpn и т.д.
Оставьте свое сообщение