Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Rassol2

Розробник розширень
  • Публікації

    11 600
  • З нами

  • Відвідування

Повідомлення, опубліковані користувачем Rassol2

  1. 06.01.2023 в 02:00, Lucider105 сказал:

    Opencart 3.0.2.0, версия php 7.4 устанавливал модуль simplepars_3.0_php_7.1-7.4.ocmod.zip

    Я что то не понимаю, но вас нет в списках покупателей модуля.
    И у меня в модуле нет файла simplepars_3.0_php_7.1-7.4.ocmod.zip

     

    Откуда у вас модуль ?

  2. 06.01.2023 в 12:35, Bn174uk сказал:

    Так хоть теперь у кого-то что-то да и будет адекватное.

    Успехов;-)

    Надеюсь, что будет адекватно, планы наполеоновские. Начал работу еше 2021 году, а потом что в мире пошло не так.
    Сейчас решил доделать пилотную версию с начальным функционалом, а там в зависимости от спроса буду развивать.

  3. 06.01.2023 в 11:53, Exten сказал:

    Здравствуйте! Подскажите пожалуйста, существует ли бот\модуль магазина в телеграм взаимодействующий с опенкартом. Другими словами - интернет-магазин в телеграм (на подобие botobot, puzzlebot и т.д. ) с общей базой товаров с магазином на opencart. Либо, возможно есть готовые решения, под заказ и т.д. Буду рад любой информации по данному вопросу. Спасибо!

    Здравствуйте.
    У меня в этом месяце выйдет такой модуль.
    Сейчас на финальном этапе пилотная версия. ;-)

     

    Вношу коррективы. Модуль уже разработан, приглашаю всех ознакомится.

     

    • +1 3
  4. 03.01.2023 в 13:35, pawlo сказал:

    чи можливо таке допрацювати у вашім модулі дану можливість? 

    дякую! 

    Здравствуйте.
    такое можно сделать через собственные скрипты, встроенного механизма обновлять опции по артикулу нет, так как в стандарте в опенкарте такого нет.
    Можете расширить такой функционал через собственные скрипты, как они работают в модуле вы можете прочесть здесь
    https://simplepars.top/index.php?page=notes&tag_id=34

  5. 03.01.2023 в 11:54, dolyalexey сказал:

    Так, ось щойно сам побачив. Не відмітив дві мови при першому імпорті

      Скрыть содержимое

    image.png.61ec30463888f95154a7dd008ab40a60.png

     

    Вот, у вас в атрибуте записано в рус локализации, а в Украинской нет. Опенкарт такая вредина что она выводит данные только те которые заполнены в локализации в которой вы просматриваете.
    То есть если у вас на сайте включен Украинский язык, а данные есть только в Рус, то опенкарт не выведет такие данные.
    Исходя из этого вам нужно прописать название атрибута в том языке в котором вы будете просматривать сайт.

    • +1 2
  6. 02.01.2023 в 16:39, dolyalexey сказал:

    Підкажіть, що я роблю не так. Дякую.

    Здравствуйте.
    Посмотрите логи модуля что там написано.
    Возможно модуль создает товары но у вас удалена группа атрибутов с id = 1 по этому атрибуты не показываются.
    Либо они созданы не в том языке.

    То есть посмотрите логи есть ли там информация об всех атрибутах что есть на скришоте.

  7. 25.12.2022 в 12:00, weqtor сказал:

    а інші проекти будуть працювати по старому? бо в мене є ще один проект яким я користуюся і він вже налаштований

    Это изменение повлияет на всю работу модуля а именно.
    Иногда сайты в коде вместо символов печатают юникод
    К примеру.
    Это слово simplepars на юникоде.

    \u0073\u0069\u006d\u0070\u006c\u0065\u0070\u0061\u0072\u0073
    Часто в юникод конвертируют смайлики, как у вас на скришоте.

    Скрытый текст

    dGurI5V.png


    Отключи эту фуницию в коде донора юникод
    u0073

    не будет переводится в наш текст.

    Такие переводы встречаются в 10% сайтов, по моим наблюдениям, и как правило в не в html за который мы чаше всего цепляемся а в js коде.
    Так что это далеко не все нужно.

    Если хотите можете отключить эту строку зайти в настроенный проект и пройтись по страницам в пред просмотр. Если все ок то так и оставить.
    Эта функция нужна от силы 10% пользователей. А то и меньше.

  8. 25.12.2022 в 11:09, weqtor сказал:

    @Rassol2готово

     

    у вас на демо сайті працює добре

    як зробити щоб і в мене працювало?

    Если я правильно определил вашу проблему, то тут нельзя поправить, можно только отказаться от перевода символов юникода на человеческий.
    Этот преобразование не всегда нужно по этому можно попробовать отказаться.

    Для этого открываем файл
    /admin/model/catalog/simplepars.php

    Находим строчку.

    $data['content'] = preg_replace_callback('/\\\\u([0-9a-f]{4})/i', array($this, 'unicode_decode'), $data['content']);

    И в начале нее добавляем решетку, что бы вышло вот так.
    #$data['content'] = preg_replace_callback('/\\\\u([0-9a-f]{4})/i', array($this, 'unicode_decode'), $data['content']);
    Сохраняем и проверяемые еше раз.

  9. @weqtor Здравствуйте.
    Пожалуйста, при публикации скриншотов прячет их под спойлер вот так.
     

    Скрытый текст

    Wmuktv1.png

    Это повышает читаемость ветки.

    По поводу вашего вопроса, попробуйте загрузить код страницы на демо сайте моего модуля.
    Пару недель назад был такой случай у пользователя, при проверке оказалось проблема с библиотекой которая декодирует страницу.
    У донора может быть корявый спец символ, и у вас сбоит библиотека.

  10. 18.12.2022 в 03:18, Toral сказал:

    Як добратись до картинок в 3-тьому посиланні?

    Если это не карточка товара то к сожалению ни как, встроенными функциями.

    Только попробовать написать свой скрипт который будет делать под запрос на третий уровень, получать код страницы доставать от туда ссылку на фото.
    Но встроенным функционалом нет, максимально редкий кейс.

    • +1 1
  11. 11.12.2022 в 13:45, ValRock сказал:

    Ну, это само собой.
    Одно напрягает - в таком формате не ясно будет в модуле, где прошла перекодировка, а где нет, и возможны сюрпризы в продакшине. Подумаю как реализовать позже.

    Разница в том что где то будет юникод символы а  где то нет.
    Если вы их не используете для загрузке себе, то вам все равно есть ли это в общем коде страницы или нет.

  12. @ValRock Правда предыдушую правку нужно откатить.
    Если нет, есть еше одна идея, если что опишу ее если эта на сработает.
    На вариант запустить эту функцию для всех страниц не обсуждается. Только сделать на уровне моего модуля возможность детектить отработала или нет, и по возможности использовать функцию или нет.

  13. @ValRock Можете попробовать модернизировать функцию в том же файле.
    Открываете файл.
    /admin/model/catalog/simplepars.php
    Находите функцию

    Скрытый текст
    public function unicode_decode($match) {
      //Функция взята тут - https://gist.github.com/aeurielesn/1116358
      return mb_convert_encoding(pack('H*', $match[1]), 'UTF-8', 'UCS-2BE');
    }

     


    Заменяете ее на .

    Скрытый текст
    public function unicode_decode($match) {
      //Функция взята тут - https://gist.github.com/aeurielesn/1116358
      $value = mb_convert_encoding(pack('H*', $match[1]), 'UTF-8', 'UCS-2BE');
      if($value){
          return $value;
      }else{
          return $match[1];
      }
      return mb_convert_encoding(pack('H*', $match[1]), 'UTF-8', 'UCS-2BE');
    }

     


    В теории в таком случаи можно добится следующего результата.
    Если смогла обработать то возвращаем обработанный код.
    А если нет, тогда не обработанный.

    Но это не точно нужно тестировать.
    Создать проект с двумя ссылками, одна нормальная одна нет. И погонять проект.

  14. 11.12.2022 в 09:09, ValRock сказал:

     

    1. Другие страницы с этого сайта (более 2000) парсятся без проблем.

    2. Страницы в браузере открываются без проблем.

     

    Значит проблема не в встроенной фунции на сайте а в чем-то другом.

    То есть у вас 2000 одинаковых страницы на 100% символ в символ, что вы считаете так.
    Если 2000 страниц спарсилось то проблема не может быть в строенном декодировании юникода, несмотря на то что поле отключения декодирования все заработало ?

    Это рассуждения по типу. "Я знаю он 20 лет ездил за рулем не одного дтп, а значит и вчера он не мог попасть в дтп, это не правда."
    Это размышление примерно таких категорий.

    Вот здесь на скришоте вы можете найти. использование unicod на странице.

    Скрытый текст

    CJa5cj1.png

    И вот где то есть либо не правильный юникод символ, либо символ который не поддерживается в вашей библиотеке. Либо еше что то.

    Факт в том, что: Модуль содержит код страницы. Отдает ее на перекодирование встроенной функции, и на выходе получает либо обработанную страницу либо пустой ответ. И это происходит именно после использования встроенной функции в php , а именно - mb_convert_encoding

  15. 10.12.2022 в 15:45, ValRock сказал:

     

    Добрый!
    Возвращаюсь к старой проблеме.
    Парсинг сайт с описанной проблемой уже норм, за то другой сайт, с Unicod, уже слетел и не правильно работает. Может есть какое-то другое решение?

     

    Нет другого решения пока что нет, так как проблема в том что встроенная фунция php не может перекодировать unicod на том сайте. И возращает пустое значение. Вместо кода  страницы.

    Ошибка в встроенной функции php и на уровне моего модуля я не могу решить ее.

  16. 07.12.2022 в 16:30, Vladislav_Belov сказал:

    Как я понял, парсер в демо версии не запускается, как пробовать?

    Здравствуйте.
    Вы не можете запустить парсинг и наполнение моего демо сайта.
    Но ничего не мешает вам полностью настраивать проект смотреть пред просмотры.
    Если страница грузится для пред просмотра она будет грузиться и в любом другом сценарии.

    • +1 1
  17. 07.12.2022 в 01:58, Yuriy160589 сказал:

    Подскажите пожалуйста куда это вставлять и какую команду для крона прописывать?

    Можете загрузить в корень сайта и назвать к примеру url.php
    И вызывать скрипт тоже командой что и крон в моем модуле.
    Описано в этой инструкции.
    https://simplepars.top/index.php?page=note&n=27

     

    Только поменяйте ссылку с ваш_сайт.ua/admin/sp_cron.php на ваш_сайт/url.php

    • +1 1
  18. 07.12.2022 в 05:31, NoName_13 сказал:

    І ви... не розібравшись... Там поломаний телефон...

    Ну сорян, просто я вижу по цитате вы цитирует человека и пишите что

    "Не дали а купил."
    Это звучит так как будто бы мне заплатили за этот скрипт.
    Но это же не так, когда у меня появилось время я его написал бесплатно.

  19. 07.12.2022 в 03:30, nikeforce111 сказал:

    Добрый день, можно чтобы при работе и парсинге в ИМ заходила цена в базовую колонку?image.thumb.png.c1e970d6fc8242f936196748ca7ae46f.png

    Если это поле у вас формируется через модуль закупочной цены. Или что то другое.
    Но главное что бы эта цена хранилась в таблице oc_product поле cost
    Если это оно, тогда  @partshez совершенно верно указал где это заполнить.

    • +1 1
  20. 07.12.2022 в 02:54, NoName_13 сказал:

    По-перше, не дали, а придбав...

    Я не сторонник в такое влазить, но мне никто не платил за скрипт. Зачем вы пишите что вы купили ?
    Я это сделал безвозмездно.

    Как то не красиво получается. :(

    • +1 1
  21. @partshez @Yuriy160589
    Скрипт по переносу ссылок из одного проекта в другой.

    Сверху три переменные которые нужно указать.
    1) откуда брать ссылки. С какого проекта
    2) в какой проект писать
    3) куда именно писать в проекте, в очередь или в ссылки на товар.

    Скрытый текст
    <?php
    
    //ID проекта откуда берем ссылки.
    $from_id = 541;
    //ID проекта куда записываем ссылки.
    $to_id = 613;
    
    //Куда записываем ссылки. 1 = ссылки очереди сканирования. 2 = ссылки на товар.
    $where = 1;
    
    require_once '../config.php';
    
    //Создаем подключение к бад. 
    $mysqli = new mysqli(DB_HOSTNAME, DB_USERNAME, DB_PASSWORD, DB_DATABASE);
    if ($mysqli->connect_errno) {
      echo "Не удалось подключиться к MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
    }
    $mysqli->set_charset("utf8");
    $mysqli->query("SET SQL_MODE = ''");
    
    $links = $mysqli->query("SELECT link FROM `".DB_PREFIX."pars_link` WHERE `dn_id` = ".(int)$from_id);
    $links = $links->fetch_all(MYSQLI_ASSOC);
    
    if($where == 2){
        addLinkToProducts($links, $to_id);
    }elseif($where == 1){
        addLinkToSenLink($links, $to_id);
    }
    
    function addLinkToProducts($links, $dn_id){
        global $mysqli;
        foreach($links as $link){
            $mysqli->query("INSERT IGNORE INTO `".DB_PREFIX."pars_link` SET `link` ='".$link['link']."', `key_md5` ='".md5($dn_id.$link['link'])."', `dn_id`=".(int)$dn_id);
        }
    }
    
    function addLinkToSenLink($links, $dn_id){
        global $mysqli;
        foreach($links as $link){
            $mysqli->query("INSERT IGNORE INTO `".DB_PREFIX."pars_sen_link` SET `link` ='".$link['link']."', `key_md5` ='".md5($dn_id.$link['link'])."', `dn_id`=".(int)$dn_id);
        }
    }
    
    ?>

     

     

    • +1 2
  22. 04.12.2022 в 16:52, ValRock сказал:

    Всем привет.
    Нижние ссылки не загружаются в закладке "Настройка парсинга". Другие ссылки на товар на этом сайте загружаются без проблем. Вопрос - что не так с этими? Вместо кода просто в зоне загрузки пишет "1" и всё. Может только у меня так?
     

     

    Проблема в встроенной функции перекодирования Unicod но это решаемо можно убрать это. Без нее можно жить.

    Открываете файл
    /admin/model/catalog/simplepars.php
    Находите строку
    $data['content'] = preg_replace_callback('/\\\\u([0-9a-f]{4})/i', array($this, 'unicode_decode'), $data['content']);

     

    Ставите в начале нее решетку, и сохраняете. Вот так

    #$data['content'] = preg_replace_callback('/\\\\u([0-9a-f]{4})/i', array($this, 'unicode_decode'), $data['content']);

     

    После этого должно работать.
    Проверил у себя.

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.