Что делать, если в большом скрипте постоянно ошибки?



  • Здравствуйте!
    Уже и не думал, что обращусь к вам, т.к. вроде все сделал правильно.
    По факту - написал скрипт добавления товаров в интернет-магазин на wordpress через wp-import - короче программа сама добавляет товары на сайт.
    Но проблема в том, что скрипт получится довольно большой - и постоянно какие-то трудности. То ошибка в самом начале, то в конце, то в середине, то не находит элемент, то еще что-то.
    Но при этом - скрипт работает в 90% случаев нормально - т.е. я там нигде не ошибся... Но бывают ситуации, когда возможно программа тупит, когда страница не прогрузилась, когда зависла страница в браузере и т.п.
    Как с этим боротсья? Есть ли какой-то прием?
    Я уже весь код запихнул "игнорировать ошибки", но проблема в том, что если скрипт попадает на 1 ошибку - то он ее игнорирует и дальше ждет следующие ошибки и т.п. - вместо того чтобы начать выполнять скрипт сначала...
    Не могу уже понять. в чем дело? Почему так происходит? Как сделать так - чтобы скрипт или работал от и до ... или чтобы он в случае реальной серьезной ошибки - прекращал свою работу? Не понимаю...



  • @brotok Игнорировать ошибки, только не дает скрипту упасть и дает вам возможность как-то это дело обработать. То есть вы сами должны в случае, если ошибка была не критичной вернуться на приведущий шаг и попытаться повторить это действие. Например циклом или меткой на худой конец.

    Кстати если скрипт составлен грамотно, то ошибки бывают не так часто и как правило из-за того, что были какие-то сетевые проблемы и на сайте, что-то не прогрузилось или как-то запрос сайта к своему серверу не отработал.



  • Цикл или метка...
    А могли бы вы примерно объяснить логику. Например, у меня вот есть проблема:

    • кликнуть по кнопке.
      Сама кнопка иногда меняет css стиль. Поэтому я ее забил в "поиск изображения" - но и это дает ошибку.
      А после кнопки оно переходит на следующую страницу.
      Что в этом случае лучше сделать например?


  • @brotok Не искать по изображению, это худшее что можно придумать. Следует научиться составлять селекторы. XPATH наиболее гибкий, но и css тоже многое имеет.



  • т.е. стандартный поиск css - это не то? а где тогда прочитать про конкретно нормальный поиск кнопки по css если она то ли меняется то ли не понятно что с этой пнокпокй вообще происходит - но периодически код у нее другой становится (даже не знаю от чего)...



  • @brotok На многих сайтах классы генерируются автоматически, но как правило есть за что зацепиться. XPATH и CSS это не изобретение БАС ) Можете погуглить. Вот для XPATH ман, по css тоже куча их в сети.



  • Тебе нужно делать проверку, что у тебя получилось после определенных действий, ну и селекторы как по мне лучше match. XPATH может путь может легко поменяться, как и CSS. А вот грамотно сделанный матч живет годами.



  • Еще бы по координатам кликать научили..



  • В ручном режиме вообще сказал бы лучше кликать.



  • @brotok Во-первых рекомендую для проверки загрузки страницы забирать ее содержимое и проверять на наличие очевидных вещей (типа слова css)
    В игнорирование ошибок надо оборачивать отдельно каждый вызов браузера
    Насчет того, что у Вас меняются селекторы, здесь уже надо смотреть, возможно их можно зафиксировать через xpatch или match, нужно смотреть конкретику.
    Также, возможно вообще проще работать с post get запросами сразу в mysql.


Log in to reply