Изменение данных во время работы.



  • Приветствую! При старте проекта я выставляю ссылку для авторизации и перехода на нужную тему после чего софт начинает выполнять записанные действия. Есть возможность как-то реализовать изменение ссылки на тему без перезапуска софта? Как-то не хочется платить за каждую капчу при авторизации.



  • @maxim Ну дак используйте ресурсы. Например ресурс из файла. В котором указываете файл со ссылками. Потом после авторизации скрипт в цикле повторяет целевые действия для каждой ссылки пока они не кончатся



  • Ссылка на тему будет одна и только в определенное время нужно будет ее менять. Ну в целом я понял и попробую сделать так. Спасибо за ответ.
    И еще вопрос по теме. Можно как-то сохранить профили с которых была авторизация чтобы потом при запуске проекта уже не надо было авторизовываться?



  • @maxim В большинстве случаев достаточно сохранять cookies. Сохраняйте указывая качестве имени логин для удобства.



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



  • @maxim Не понял сути проблемы. В каждом потоке и так свои cookies.



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



  • @maxim Ничего не понял. Что у вас в файле? Логины? Если да, то поставьте в настройках ресурса количество одновременных использованний = 1. А потом просто читайте нужный файл cookies из ходя из текущего логина



  • На данный момент у меня реализованы 2 проекта под нужный мне сайт.

    1. Просто регистрирует и сохраняет куки.
    2. Должен брать куки и если их нет, то проходит авторизацию по файлу на сайте после чего сохраняет куки и идет выполнять задачу.
      Имеется файл с логинами для авторизации и файл со строками куков.
      Делал разные тесты с 3 строками и в логе всегда выводило самую первую строку как в примере ниже:
    Поток №1 : 111111111
    Поток №1 : Поток выполнен успешно с сообщением "Ok"
    Поток №2 : 111111111
    Поток №2 : Поток выполнен успешно с сообщением "Ok"
    Поток №3 : 111111111
    Поток №3 : Поток выполнен успешно с сообщением "Ok"
    

    Цифра 1111 это действие log с выводом взятой строки.
    При этом остальные строки вообще никак не берутся и соответственно куки будут на всех потоках одинаковые.

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



  • @maxim Я уже написал, что нужно указать в настройках ресурса.



  • Да, вроде как с вашей помощью у меня что-то получается, но немного криво работает.

    Поток №1 : Начало работы потока
    Поток №1 : Тут идет строка №3
    Поток №1 : Поток выполнен успешно с сообщением "Ok"
    Поток №2 : Начало работы потока
    Поток №2 : Тут идет строка №4
    Поток №2 : Поток выполнен успешно с сообщением "Ok"
    Поток №3 : Начало работы потока
    Поток №3 : 
    Поток №3 : Поток выполнен успешно с сообщением "Ok"
    Поток №4 : Начало работы потока
    Поток №4 : 
    Поток №4 : Поток выполнен успешно с сообщением "Ok"
    Скрипт завершен корректно
    

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



  • Странно, что криво работает, я думаю что проблема в том, что вы не прочитали +100500 тем на форуме где объясняется все досконально с примерами. Каждый приходит и кричит, что у него не получается, "мат часть читал?" - а нафига, лучше форум засерать подобными +100500 вопросами. Да я гарантию даю, что видео по обучающим вопросам тоже никто не смотрел. Потому что если бы смотрел, то вопросов бы не возникало, до времени написания сложных скриптов.



  • @seedgg Мне кажется или я написал про документацию? В данный момент вроде запускает потоки и вроде все ок. Хотя часть потоков отлетает с ошибкой "Таймаут во время выполнения WorkerSettings"



  • @maxim Ресурсов ПК возможно не хватает



  • @denis_krsk Загуглил и тоже пришел к такому выводу. Интересует чего именно нужно накидывать на дедике для комфортной работы. Вроде не особо много действий в проекте.



  • @maxim Очень сложно догадываться, что вы сделали не так. Думаю скоро половину станут экстрасенсами. Если бы вы хотели разобраться, что именно не так, скинули ваш простой примерочный скрипт, где просто идет вывод в лог и вам бы за очень короткое время сказали что не так и как правильно все работает, а догадываться как вы там все организовали и что написали, это гиблое дело и неблагодарное. Это все равно, что ставить виртуально диагноз, чем больной человек, незная практически ничего. И выходя с этого, вам могут насоветовать 1000 болезней...тогда все обречен...а правильное лечение было - помазать порез перекисью водорода. Я думаю смысл понятен.



  • @seedgg Я вижу много текста, но как он относится к теме?
    Первый вопрос был решен и второй про ошибку тоже. Если вы пишите про последний мой комментарий, то там немного другая суть. Не надо писать в моей теме, так как ваши посты не несут никакого смысла. Спасибо.



  • @maxim Ну я написал это для того, чтобы было лучшее понятие того, как лучше правильно сделать. Потому, что вы не давно зарегистрированы на форуме, и возможно далее будут вопросы. Так я просто указал, как было бы лучше поставить вопрос, который дал бы более быстрый и правильный ответ. Лично на ваш счет не воспринимайте. Буду рад помочь в будущем. Пожалуйста.



  • @seedgg Собственно у меня не возникает особых проблем по обычным задачам, но тут все мои варианты не работали как надо и по сути только из-за этой проблемы зарегистрировался. Я не считал нужным скидывать проект для решения этих проблем, тк вроде понятно объяснил суть проблемы и мне даже помогли с решением. Вопросы бывают у любого человека и иногда понятнее спросить на форуме, чем смотреть какие-то видео с унылыми объяснениями:)