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

Rassol2

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

    11 597
  • З нами

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

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

  1. 06.11.2023 в 18:19, Espresso.Doktor сказал:

     

    Пробую юзати тестовий телеграм-магазин, і походу не знайшов вікно чи кнопку пошук.

    Є функція пошуку товару, чи потрібно перебирати по категоріям?

    Нет, поиска пока что нет. 

  2. 06.11.2023 в 00:32, Espresso.Doktor сказал:

     

    Добавлю свої 5 грош.

    В авто/мото/вело запчастинах, запчастини до побутової техніки і т.д.

    Реально 20 % запчастин в наявності, решта 80 % запчастин під замовлення йдуть. Звідки менеджер ІМ може знати, що клієнт зіпсує в своєму авто/мото/веліку чи в холодильнику чи в пральній машинці.

     

    Якось так воно виглядає у реальному житті.

    Здравствуйте.
    Вы немного ошиблись во временных диапазонах. :)
    Данная настройка уже давно есть в модуле, и вы можете выбрать тот вариант который вам нужен.

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

    4KLJhkT.png

     

  3. При составлении шаблона автоматической рассылки, какие данные вы бы хотели иметь?
    Допустим
    {name} - имя пользователя.
    {date_visit} - Время последнего посешения бота.

     

    Цитата

    Используя такие операторы вы сможете составлять шаблоны рассылок подобного вида.
    Здравствуйте {name}
    Мы с ужасом обнаружили что вы последний раз помешали нас {date_visit} !!!
    Вас что то огорчило и вы не хотите больше нас видеть ?
    Пожалуйста свяжитесь с нашим менеджером и он все исправит, а если нет мы его обязательно накажем. ;-)


    И в момент рассылки модуль подставить соответствующие данные и получится текст такого вида.
     

    Цитата

    Здравствуйте Дарина
    Мы с ужасом обнаружили что вы последний раз помешали нас 2023-10-31 23:27:01 !!!
    Вас что то огорчило и вы не хотите больше нас видеть ?
    Пожалуйста свяжитесь с нашим менеджером и он все исправит, а если нет мы его обязательно накажем. ;-)


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

    {name}

    {login}

    {phone}

    {date_visit}

    {date_add}

    {date_last_order}

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

  4. 03.11.2023 в 10:46, Toral сказал:

    Добрий день, можна якось добавити в пошук заміну інформацію з іншої границі?

    Да можно, просто вставляете границу {gran_id} только результат в пред просмотре поиск замены вы не получите. Из за того что в момент обработки границы парсинга в которую вставлены данные из другой границы, вот та другая еше может быть не обработана и неготова для вставки.
    Но при парсинге в товар все будет сделано.

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

    Что вы увидите в поиск замене.
     

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

    WLy6BCn.png


    А вот что будет в пред просмотре парсинга в товар. И в сам товар по факту.
     

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

    LpaPz5S.png


    так же можно применять границы париснга в поиск замене, заменяя что то на данные из границы парсинга.

    Единственное когда это не сработает, это если вы сделаете замыкание.
    То есть.
    {gran_1} вы используете данные из границы {gran_2} в которой вы используете данные из границы {gran_3} в которой вы используете данные из границы {gran_1}
    И вот тут замкнулся круг, мы не можем сфоримровать данные для гран один пока не получим данные из границы два, которая в свою очередь ждет данные из границы 3 что бы сформироватся, а третья граница подло ждет данные из первой.

    В таком случаи в пред просмотре вы увидите {gran_2} вместо данных, ну и в том случаи если вы укажите ошибочную границу которой нет в пределах проекта к примеру {gran_666} ее нет, тогда тоже данные не подставятся.

    А во всем остальном, вперед подставляйте как вам будет удобно.

    • +1 1
  5. 02.11.2023 в 07:41, LevJek сказал:

    Манул читал, все так и делал. Плюс 4 дня общался по почте с поддержкой хостинга. Спасибо за идею о запуске крона на стороннем хостинге. Попробую что-то решить. Вот видео как работает крон через хостинг и как работает запуск задачи через модуль:

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

     

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

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

    <?php
    	echo "<pre>";
    	echo file_get_contents('https://мой_сайт/admin/sp_cron.php');
    	echo "</pre>";
    	echo "Все ок";
    
    
    ?>


    Тут результат должен быть таким.
    Если никакое задание не должно выполнятся то при вызове такого скрипта вы получите, все ок.
    Если что то должно выполнятся, то браузер будет крутится и потом вы получите все ок. Либо сообщение что сейчас идет выполнение с обратным отсчетом от 5 минут. Это тоже ок.

    Если посыпятся ошибки, значит что то не так с настройками на хостинге, и сат сам себя не видит в интернете.
    Скрипт заливаете в корень сайта, меняете доменное имя на ваше. И через браузер вызываете его.

  6. 02.11.2023 в 05:03, LevJek сказал:

    Здравствуйте! 

    Как я писал выше, модуль не работает через крон на хостинге Hostiq. По этом этот вариант мне не подходит. (

    Если у вас не работает на хостинге запуск каждую минуту что странно. Вот эти настройки запросов что указаны в инструкции
    https://simplepars.top/index.php?page=note&n=27

    Можно сделать на любом хостинге, даже не на вашем, и тот другой хостинг будет дергать ваше задание ;-)
    Если у вас есть знакомый на другом хотсинге пусть поставит это задание. Нагрузку на его хостинг это не будет производить, он просто будет дергать ваш скрипт а вся работа будет ложится на плечи вашего хостнга.
    Вот так можно выйти с подобных ситуаций.

    • +1 1
  7. 01.11.2023 в 11:40, LevJek сказал:

    Доброго дня. Підкажіть будь-ласка, як автоматично видалити CSV файл перед стартом парсингу у CSV? Тому що наразі товари просто дозаписуються, тим самим дублюючись у файлі. 

    Здравствуйте.
    При работе через крон выбрать этот пункт.
     

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

    EgmQ1lP.png

     

  8. 31.10.2023 в 04:25, yurok79 сказал:

    В логах все нормально https://prnt.sc/eIpVLpDFuusZ а в карточке пусто https://prnt.sc/lf8AByyclPeS

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

  9. 30.10.2023 в 05:05, sergej88 сказал:

    Я пробував наступним чином, якщо в мене в працсі є код товару який співпадає з кодом товару на сайті, то задавати йому через пошук заміну іd постачальника 
    110500|15-110500
    І навиході в нас такий результат з унікальним кодом 15-110500

    Але якщо на сайті ще є код товару який містить таке значення (110500) то він також змінюється

    786091105000

    На
    7860915-1105000

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

    Но вашу логику можно усовершенствовать, если не задвавать вопрос зачем это делается. Просто в поле идентификатора товара в симпле парс, перед границей прописать произвольный код, к примеру как у вас 15-{gran_1}
    и модуль будет генерировать идентификатор уже с приставокой. И тогда явно не сможет найти такой же товар у вас в магазине и можно будет создавать новые товары с таким идентификатором в приделах одного проекта.

    Так же напишите мне в лс, номер заказ и где вы покупали модуль, так как вас нет в списке покупателей.

  10. 27.10.2023 в 07:28, Axelenz сказал:

    Bitrix может хранить в кеше не только размер 100х100 потому я и нарисовал регулярку универсальную, не зависящую от размера, подходит практически на любой сайт... Ну или завтра захочет поставщик увеличить размер и сделать 200х150 и что ? А регулярка будет работать и завтра и через год...

    Все вы верно говорите.
    Но скорее всего данные берутся с одного места. А сайты меняют размер привью аж никогда. Как перепарсивать фото с донора нужно аж никогда.
    Но если такое произойдет можно зайти и поменять, раз в жизни.

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

  11. 27.10.2023 в 05:50, Rudypit сказал:

    Привет, подскажите, а как можно открыть сайт с защитой. 
    например сайт santehnika - online. ru 
    На текущий момент не выводить сай в парсере, но и код который отображается не содержит данных по товарам. 

    Даже при загрузке без кеша и без предпросмотра. 

    Какое может быть решение?

    Там используется JS, пока что никакой.
    Сейчас это не обойти.

  12. 27.10.2023 в 02:55, nikitishin сказал:

    Здравствуйте, подскажите как решить проблему с парсингом фото

    Есть ссылка на фото 
    /upload/resize_cache/iblock/de2/100_100_1b24bf9e35bfbc8de9fc7f31afe648f50/foto1.jpg

     

    По даному пути открываеться фото с водяным знаком, 
    Без водяного знака путь будет такой
    /upload/iblock/de2/foto1.jpg

    У меня прописано такое правило

    .webp|.jpg
    /resize_cache|
    {reg[#/upload/iblock/[0-9]+x[0-9]+/(.*?)/#]}|/

    Покока я получил такой путь
    /upload/iblock/8dd/100_100_1b24bf9e35bfbc8de9fc7f31afe648f50/foto1.jpg

    Подскажите как прописать регулярное выражение что убрать 100_100_1b24bf9e35bfbc8de9fc7f31afe648f50 
    /8dd/ ета папка динамическая для разных фото
     

    Анука, я тоже поучаствую в вашем конкурсе.
    Я бы сделал так.

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

    oj30nmy.png

     

    Само правило.
    resize_cache/|
    /100_100_{skip}/|/

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

  13. 17.10.2023 в 18:37, Vetlucky777 сказал:

    Подскажите как можно такое реализовать.

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

    у меня 1000 товаров значит нужно делать столько дублей ссылок (но дубли не создаются), через поиск замену добавил все артикулы товаров куда записывать данные.

    с одной ссылкой все работает и данные пишет только в один товар.

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

     

    дополнительно тестил библиотеку PHP Simple HTML DOM Parser написал скрипт вроде все корректно парсит и записывает.

    но такое хочу реализовать именно в этом модуле для гибкости настроек

    С одной ссылки обновить несколько товаров нельзя.
    Так же как и добавлять дубли ссылок и товаров. Это нарушает самую основу модуля. Написать скрипт который будет это делать можете.

  14. Донат заработанных денег Украине.

    С 01.09.2023 по 30.09.2023 включительно.
    Было продано на сумму 29$
    По традиции добавлю еше от себя.
    Подробности тут
    https://opencartforum.com/topic/184237-podderzhka-tgmarket-modul-internet-magazina-v-telegramme/?do=findComment&comment=1801116

  15. Обновление v4.9-9_beta
    Улучшение построение в XML/YML дерева категорий.
    По просьбе @Axelenz внедрил штучное преобразование дерева категорий от донора.
    Очень часто дерево категорий приходит от донора битыми, раньше модуль мог составить дерево категорий только в том случаи если в выгрузке xml была корректная. И указывались правильно родительские категории донора.
    Теперь же, если придет битое дерево категорий то модуль попробует исправить ошибку прайса и выдать дерево категорий.
    Возможно некая погрешность в стартовой категории дерева, но при этого все равно будет 95%+ правильно составленных категорий.
    Погрешность возможно там где битые категории, где все нормально модуль по прежнему будет выдавать результат на основе обработки категорий донора, без доработки.

    С этим уже можно будет работать, это луче чем отсутствие категорий как таковых.

    • +1 1
  16. Здравствуйте.
    Вы как то не совсем понятно объяснились.
    Что значит массово, массово вручную забивать, или из прайс листа доставать, или парсить сайт донор.
    Из чего то эта массовость должна состоять, так что опишите что у вас за входные данные.

  17. Обновление условий использования.  (Пока еще не закреплена в лицензионном соглашении)
    С этого момента ограничение переноса лицензии с одного сайта на другой проходит процесс либерализации.
    Раньше переносить ключ с одно сайта на другой можно было не чаше одного раза в 72 часа.
    С этого момента перенос можно производить не чаше 1 раза в 24 часа. То есть сократилось в 3 раза.

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


    ЗЫ. не хотел писать этот пост но нужно донести эту информацию до масс.
    Не хотел писать по причине холивара в этом вопросе. Так что давайте воздержимся от него.

    • +1 3
  18. 28.09.2023 в 13:27, yurok79 сказал:

    Подскажите как бороться с таким)

    Товар со скидкой

    <oldprice>2990</oldprice> - Цена 
    <price>2890</price> - Цена со скидкой
     
    Товар без скидки
    <price>2990</price> - Цена
     
    Тоесть в товарах со скидкой и без скидки теги меняются местами и меняют свое значение. Как правильно настроить?

    Все старо как мир.
    делаете границы
    {gran_1} - oldprice
    {
    gran_2} - price

    И указываете в цену
    {
    gran_1}{|}{gran_2}
    а в акцию
    {gran_2}


    Подробнее про оператор {|} можно узнать здесь
    https://simplepars.top/index.php?page=note&n=33

    • +1 1
  19. Совет для большинства. Ну или поделюсь опытом.


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

    Если откатится во времени к моменту внедрения много поточности, то там была большая дискуссия, я проводил много тестов на десятках клинских сайтов, и ограничение в 5 потоков это баланс. До 5 потоков скорость парсинга растет кратно, а от 5 уже не значительно, но при этом нагрузка растет значительно, как и риски блокировок. В общих чертах, в частных случаях и парсинг в 5 потоков может показать худший результат чем в один поток если сильно убогий хостинг у вас или у донора.
    Лично я парсю, или парсил в такой конфигурации.

     

    Если донор знакомый и я с ним работаю постоянно. И я знаю его поведение.

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

    xiqkXYA.png

     

    Если донор новый, или к примеру какой то из крупных сайтов, где я могу предположить что есть хороший отдел it который не захочет со мной делится информацией.
    Я парсю в таком конфиге.
     

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

    BKXd4Zx.png

     

    Эти два конфига я бы назвал базовыми при здоровом парсинге.
    Но я понимаю что, там где я могу себе позволить делать что то медленно, с минимальными рисками, вы может не захотите или у вас другие требования.
    Я просто пишу как я поступаю лично. Из прокси у меня есть только один, на тот случай что бы убедится что проблема не в моем ip, как правило в баны не попадаю.

    Так поступал я когда парсил активно на заказ.
    Ну и помните, пока вы не создаете проблемы донору, а именно нагрузку, вы никому не интересны. Когда начинаете парсить 50 000 ссылок в 5 потоков, у донора растет нагрузка на веб сервер, и к нему приходит хостер с просьбой перейти на больший тариф или угомонить трафик. И вот тогда донор начнет задумываться что происходить и искать причину и бороться с ней. То есть с вами.
    Уважайте своего донора и будете жить дружно и долго. ;-)

    • +1 1
  20. 27.09.2023 в 21:02, buslikdrev сказал:

    Без скриптов модуль не универсален.

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

  21. 27.09.2023 в 15:36, buslikdrev сказал:
    		// убираем ограничение по многопоточности
    		$script_data['urls'] = array();
    
    		foreach($pars_url['links'] as $key => $result) {
    			if ($key < $script_data['setting']['thread']) {
    				$script_data['urls'][] = $result['link'];
    			} else {
    				break;
    			}
    		}

     

    И это благополучно не будет работать.
    По двум причинам.
    1) модуль не подает больше 1 ссылки на парасинг когда включены скрипты.
    2) при объявлении собственных функций в скриптах если бы работала много поточность, не работал бы модуль. Из за ошибки области видемости переменных.

    @buslikdrev Я понимаю что вы шарите в пхп и готовы расширять возможности через собственные скрипты. И это похвально. Можете заказы выполнять по написанию скриптов для моего модуля, тут такого много. Но не нужно делать акцен что все через скрипты.
    А то это уже похоже на поговорку, "если у меня в руках молоток то все вокруг гвозди."  ;-)

  22. 27.09.2023 в 13:48, buslikdrev сказал:
    26.09.2023 в 07:24, partshez сказал:

     

    Ограничение по потокам тоже через скрипты убирается.

    Вы уверены ?
    Просто когда вы включаете скрипты потоки ограничиваются до 1 в независимости от настроек.
    Мне интересно как вы увеличиваете потоки через скрипты ?

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

Important Information

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