Удаление строк после использования

Поддержка
  • У меня есть скрипт и в нем есть ресурсы. Создавал их по принципу: из файла->только чтение(после в редакторе добавлял еще запись)->использовать строку 1 раз(так как в файле были аккаунты)->сохранить. В самом скрипте ставлю действие "Перезагрузить ресурс" и после него действие "Парсить CSV строку"(Или действие "Парсить строку(устаревшее), неважно) без повторения строк (тобишь notreuse). После завершения скрипта и его остановки строки из файла удаляются. Почему они удаляются? Я ни в ресурсе не указывал "Удаление строк после исопльзования", ни в скрипте не ставил "Удаление текущего элемента". Голову ломаю и не понимаю что я сделал не так и они начали удаляться.

  • Видимо я понял в чем проблема. Проблема в том что у меня в ресурсе стоит 2 галочки сразу-это Запись и Чтение. Но я не понимаю почему после парсинга строки, удаляется эта строка в файле. Ведь парсинг≠удаление или чего-то я не понимаю.
    И как быть тогда? Создавать отдельно ресурс под запись и отдельно под чтение? Это же капец костыли. У меня в скрипте 10 разных сайтов, для каждого сайта нужно создать ресурс аккаунты, куда будут записываться и читаться строки с логином:паролем от аккаунта, и получается что нужно создать 20 ресурсов(10 под запись, 10 под чтение) для этих 10 сайтов?
    Смысл тогда какой был давать возможность ставить галочки одновременно на чтении и записи, если строка после чтения удаляется по завершении скрипта?

  • @makasin_402 said in Удаление строк после использования:

    Почему они удаляются?

    Вот поэтому:

    @makasin_402 said in Удаление строк после использования:

    после в редакторе добавлял еще запись)->использовать строку 1 раз

    @makasin_402 said in Удаление строк после использования:

    Видимо я понял в чем проблема. Проблема в том что у меня в ресурсе стоит 2 галочки сразу-это Запись и Чтение. Но я не понимаю почему после парсинга строки, удаляется эта строка в файле. Ведь парсинг≠удаление или чего-то я не понимаю.

    Проблема в непонимании как работают эти настройки.

    У ресурса есть количество удачных и неудачных использований. Если вы поставили 1 удачное использование, то строка удаляется после того как вы ее использовали. Опция notreuse дает понять скрипту что строку вы эту больше использовать не будите. Настройка "запись" дает доступ ресурсу на изменение файла.

  • @spacerange Привет, спасибо что отозвался

    Смотри, если судить по твоей логике. Например создаю ресурс тупо на чтение, и выставляю использовать строку 1 раз(тобишь 1 удачное и 1 неудачное использование). Делаем действие в скрипте парсить строку, после завершения скрипта - строки не удаляются. То есть твое суждение о том, что если я ставлю 1 удачное использование и строка удаляется, уже неверно. Но если ты поставишь в ресурсе помимо чтения еще и запись, то при выполнении того же скрипта(я про действие парсить строку) строка уже удаляется(хоть я нигде не использовал действие "Удалить текущий элемент ресурса" или же при создании ресурса не выбирал "Чтение и удаление строк после использования").

    Насчёт второго твоего суждения. Опция notreuse, да она дает скрипту понять что я эту строку больше не буду использовать, НО именно в этом запуске(то есть эта строка не появится больше, например при выполнении цикла For). То есть при остановке данного скрипта и последующем запуске уже можно использовать эту строку снова.

    Насчёт настройки "запись" это понятно, что она дает право ресурсу на изменение файла. Но как я и повторяюсь, ПАРСИНГ ≠ УДАЛЕНИЕ, потому что это даже звучит бредово, что при парсинге удаляются строки, которые спарсили. Ведь парсинг это получение, а не получение и удаление(возвращаясь к моему первому обзацу, о онли "чтение" файла)

  • @makasin_402 И получается выход из всего этого кошмара и непонимания почему именно так работает - это создание отдельных ресурсов под запись и под чтение, у которых исходный файл будет один и тот же. Что напрочь противоречит возможности сразу ставить 2 галочки на запись и чтение

  • @makasin_402 Парсинг = удаление если закончились удачные или неудачные использования у ресурса.
    В том то и дело, если вы не хотите чтобы текстовый файл записывался в автоматическом режиме вы убираете галку запись и удаляете вручную.

  • @makasin_402 Вам нужно строить логику от того хотите ли вы удалять строки из ресурса или нет и сколько раз можно запросить строку у ресурса прежде чем она удалиться. В зависимости от этого настраивать удачные и неудачные использования и ставить галку запись. Если же вам необходимо самому решать когда удалять строку в текстовом файле, то удаляйте ее сами через действия в BAS.

  • @spacerange Давай так, на примере. Сейчас создал ресурс(файл из 3 строчек), выбрал галочки запись и чтение, и поставил 2 успешных выполнения. Действительно, строки не удаляются, если я пройдусь 3 раза по действию парсинг строки, где в качестве строки будет выбрано ресурс|notreuse. НОООО если начну проходить по действию "парсить строку" 4-ый, 5-ый, 6-ой раз, то строки начинают повторяться, хоть я использовал функцию notreuse. Получается, что здесь пропадает смысл notreuse.

    Насчет второго сообщения. Давай я объясню что мне нужно реализовать, чтобы ты меня понял.
    Есть одна функция, которая выполняет регистрацию аккаунта, и собственно записывает username:pass в ресурс, то есть в ресурсе должна быть галочка на "запись"
    Есть вторая функция, которая выполняет заход на этот аккаунт. То есть читает строку из ресурса(того же файла, в который была записана пара usename:pass) и вводит ее в форму авторизации. Тобишь для этого действия в ресурсе должна стоять галочка на "чтение". Получается эта функция будет по очереди заходить на каждый аккаунт без повторения, для этого как раз в блоке парcить строку использую ресурс|notreuse. ЕСЛИ же, например, аккаунт будет забанен, то мне, логично, эта строка с парой usename:pass уже не нужна и я удалю ее сам через действие "удалить текущий элемент ресурса". Получается по окончании этого цикла(переходы на разные аккаунты) мне нужно чтоб рабочие акки сохранились в этом ресурсе для следующего применения(например если я запущу скрипт не след день), а нерабочие акки удалились(если они подходят под условие что он забанен и тем самым выполниться блок удалить текущий элемент ресурса).
    Хочу сразу сказать, эти функции работают отдельно, то есть вначале я запускаю, так скажем, РЕГЕР в несколько потоков->скрипт заканчивает работу с сохраненными парами usename:pass, после я запускаю АВТОРИЗАТОР также в несколько потоков->скрипт заканчивает работу либо со всеми парами, которые были получены в РЕГЕРЕ, либо с почищенными парами, либо ни с чем.

    И вот, зная, что мне нужно реализовать,что ты мне посоветуешь, что мне нужно выставлять в редакторе ресурса (количество успешных и неуспешных использований, какие галочки выставлять, как парсить строку единоджы(без повторений) и чтоб они потом не удалялись)?

    Надеюсь я внятно объяснил))

  • @makasin_402 Для вашей задачи зачем вам вообще ресурсы? Зачем вы привязываете логику скрипта к настройкам ресурса?
    Регистрируете аккаунты, указываете путь в какой текстовый файл сохранить.
    Потом так же указываете текстовый файл откуда взять аккаунты, хоть в ресурсе, хоть без ресурса.
    В BAS есть целый модуль с разнообразными действиями для файлов, отдельный модуль для строк, отдельный для списков, делайте что хотите и как хотите. На всякий случай скажу, путь до файла можно указывать не в ресурсе, а в модуле для работы с файлами. В ресурсе вы тоже можете указать путь до файла, но всю логику нужно будет строить действиями внутри скрипта.

  • @spacerange дружище, блин, я задаю один вопрос, а ты меня учишь как пользоваться басом, намекая что я нуб и не понимаю как работает то или иное(хоть некоторые твои суждения я уже опроверг), и не давая нормальный, ПОЛЕЗНЫЙ совет.Я в любом случае благодарен что ты отозвался на мою созданную тему, но я не первый день в басе, я знаю что есть множество модулей для работы. НО ТАКЖЕ ЕСТЬ И РЕСУРСЫ. СМЫСЛ ИХ ТОГДА СОЗДАВАЛИ, ЕСЛИ МОЖНО РАБОТАТЬ ТУПО НА МОДУЛЯХ? Смысл было им давать разные плюшки(запись, чтение, мешать строки и тд и тп)? Если они добавлены, то значит смысл им есть, логично же. Каждый решает, чем он будет пользоваться. Я строю свою работу на удобстве использования ресурсов, очень удобно при многопотоке.
    И да, я знаю что можно читать, запись в файл из модуля. Но он у меня тупо не хочет работать. Я хз, связано ли это с тем,что у меня бас в д диске и скрипт долго обращается/не может оьраться к файлу, но просто тупо не хочет. Выбираю блок запись в файл, указываю путь до файла( например, D/Работа/скрипт/файл.тхт), указываю что записывать и он просто не хочет записываться. Поэтому решил воспользоваться ресурсами. И в них есть функция, как запись так и чтение, вот уже удобство(лично для меня).
    Да ты можешь сказать, что создай ресурс с путем до папки с файлами, и используй этот ресурс/путь в блоке запись в файл, но опять же, это создание дополнительных ресурсов( что противоречит возможности ставить одновременно 2 галочки на чтении и записи в ресурсе "из файла")

    И так, вопросы остаются все те же. Если мне нужен ресурс с параметрами запись и чтение(для аккаунтов), что мне делать/как исправить/на что обратить внимание, если при парсинге удалются строки, если мне нужно каждую строку использовать только один раз (то есть ставить больше 1 использования при notreuse не канает)?

    Единственные выходы, которые я вижу из моей сложившейся ситуации — это создавать ресурсы отдельно под запись и под чтение, где будет один и тот же испольняемый файл(что напрочь убивает выделенную возможность в ресурсе на выставление одновременных галочек на чтении и записи), и это даст возможность не удалять строки при чтении ресурса(который был создан для чтения) при выполнении парсинга строки. И второй выход — это каждый раз при завершении скрипта в режиме РЕГЕР менять галочки в ресурсах с записи на чтение(что также убивает ту самую возможность, что я писал выше) и после уже запускать АВТОРИЗАТОР.

    Если у кого есть лучше способ, или ответы на мои поставленные вопросы выше(что во всей теме, что в данном сообщении) прошу отписаться, буду благодарен каждому дельному совету(а не учению как правильно жить и как строить работу в басе) :D

  • Решил я свою проблему. Поменял убрал галочку в ресурсе с записи, а действие "запись в файл" заменил на "добавить элемент в ресурс"
    И теперь нормально парситься строка без удаления и около запись в файл работает (я про добавить элемент)

  • you guys type large paragraphs

  • @hellomembersha ahahahah)) Sorry man, I needed to clearly express what I need and what my problem is))