Профиль папка. Очистка за собой

andrey-ka

Client
Регистрация
03.06.2018
Сообщения
854
Благодарностей
246
Баллы
43
Начинаю осваивать профиль папки. Работаю с большим количеством аккаунтов, соответственно папок с профилями много, они все "кушают" место.
Периодически аккаунты банятся и нужно выполнить удаление данного профиля.
При работе со старыми профилями я просто удалял файл *.zpprofile, теперь же в конце проекта я не могу удалить папку, т.к. файлы блокируются приложением ZP.
Не писать же отдельный шаблон, который будет запускаться по расписанию и выполнять чистку профилей.

Пробовал делать:
instance.CloseAllTabs();
instance.Launch(ZennoLab.InterfacesLibrary.Enums.Browser.BrowserType.WithoutBrowser, true);

ZP все равно держит файлы из профиль-папки заблокированными
 

Арман

Client
Регистрация
04.07.2019
Сообщения
137
Благодарностей
32
Баллы
28
Добрый день
Надо запускать в ZennoPoster а ProjectMaker не работает
C#:
instance.Launch(ZennoLab.InterfacesLibrary.Enums.Browser.BrowserType.WithoutBrowser, false);//запуск инстанса
Directory.Delete(project.Directory+ @"\Профиль папка", true);//удалить директорию (профиль папку)
По этой ссылке есть статья я там написал как можно проверить директорию на существование и как создать директорию может будет полезно
 
Последнее редактирование:
  • Спасибо
Реакции: Yuriy Zymlex и sw_sw

sw_sw

Client
Регистрация
24.02.2017
Сообщения
695
Благодарностей
277
Баллы
63
Добрый день запуск надо делать с браузером тогда профиль папка отпустит ZennoPoster и можно будет удалить профиль папку
C#:
instance.Launch(ZennoLab.InterfacesLibrary.Enums.Browser.BrowserType.Chrome, false);//запуск инстанса
Directory.Delete(project.Directory+ @"\Профиль папка");//удалить директорию (профиль папку)
По этой ссылке есть статья я там написал как можно проверить директорию на существование и как создать директорию может будет полезно
Я может быть не совсем осознал, как запуск инстанса поможет удалить профиль-папку?
Удаление невозможно ровно до тех пор, пока инстанс не закрыт и шаблон не остановлен.
Кто как справляется с проблемой?
 

andrey-ka

Client
Регистрация
03.06.2018
Сообщения
854
Благодарностей
246
Баллы
43
а удалится так папка?
Directory.Delete(project.Directory+ @"\Профиль папка");//удалить директорию (профиль папку)
так же вложенные папки
 

Арман

Client
Регистрация
04.07.2019
Сообщения
137
Благодарностей
32
Баллы
28
смотрите ниже
 

Арман

Client
Регистрация
04.07.2019
Сообщения
137
Благодарностей
32
Баллы
28
а удалится так папка?
Directory.Delete(project.Directory+ @"\Профиль папка");//удалить директорию (профиль папку)
так же вложенные папки
По идее она удалит эту папку и соответственно всё что в ней лежало то есть да
Но вы попробуйте а там видно будет
Если что это путь к папке где лежит ваш проект project.Directory
Можно ещё вот так
C#:
Directory.Delete(@"D:\папка\профиль папка", true);//удалить директорию (профиль папку)
 
Последнее редактирование:

nicanil

Client
Регистрация
06.03.2016
Сообщения
2 242
Благодарностей
1 804
Баллы
113
Отключите инстанс, а затем добавьте паузу (она нужна, чтоб ZennoPoster освободил ресурсы связанные с этой профиль-папкой). Я в тестовом шаблоне сделал паузу в 5 секунд и её хватило.
75099
 
Последнее редактирование:

sw_sw

Client
Регистрация
24.02.2017
Сообщения
695
Благодарностей
277
Баллы
63
Ага, теперь понятно! Спасибо!
 

Арман

Client
Регистрация
04.07.2019
Сообщения
137
Благодарностей
32
Баллы
28
Отключите инстанс, а затем добавьте паузу (она нужна, чтоб ZennoPoster освободил ресурсы связанные с этой профиль-папкой). Я в тестовом шаблоне сделал паузу в 5 секунд и её хватило.
Добрый день
вы используете запуск без браузера используйте путь к другой профиль папке поэтому до этого профиль папку мы можем удалить но всё равно останется профиль папка к которую не сможем удалить
 
  • Спасибо
Реакции: sw_sw

nicanil

Client
Регистрация
06.03.2016
Сообщения
2 242
Благодарностей
1 804
Баллы
113
Добрый день
вы используете запуск без браузера используйте путь к другой профиль папке поэтому до этого профиль папку мы можем удалить но всё равно останется профиль папка к которую не сможем удалить
Я прошу прощения, но не совсем понял, что Вы хотели сказать :(
 

Арман

Client
Регистрация
04.07.2019
Сообщения
137
Благодарностей
32
Баллы
28
Я прошу прощения, но не совсем понял, что Вы хотели сказать :(
Я дико извиняюсь просто на скриншоте увидел галочку использовать профиль папку
Но тот способ который вы показали не работает когда мы запускаем профиль папку потом запускаем без браузера то профиль папка всё-равно не освобождается и удалить не получается уже 5 минут прошло а удалить не получается
 
Последнее редактирование:
  • Спасибо
Реакции: nicanil

nicanil

Client
Регистрация
06.03.2016
Сообщения
2 242
Благодарностей
1 804
Баллы
113
Я дико извиняюсь просто на скриншоте увидел галочку использовать профиль папку
При использовании режима "Без браузера" эта настройка выключена, но на всякий случай заменил скриншот, чтоб он не вводил в заблуждение:bt:

Но тот способ который вы показали не работает когда мы запускаем профиль папку потом запускаем без браузера то профиль папка всё-равно не освобождается и удалить не получается уже 5 минут прошло а удалить не получается
Тестируете в ProjectMaker? Попробуйте в ZennoPoster.
 
  • Спасибо
Реакции: Арман

Арман

Client
Регистрация
04.07.2019
Сообщения
137
Благодарностей
32
Баллы
28

nicanil

Client
Регистрация
06.03.2016
Сообщения
2 242
Благодарностей
1 804
Баллы
113
Приложил шаблон к этому сообщению. Попробуйте запустить его в ZennoPoster.
При 40 запусках у меня ни разу не споткнулся.
 

Вложения

  • Спасибо
Реакции: usawa0 и Арман

andrey-ka

Client
Регистрация
03.06.2018
Сообщения
854
Благодарностей
246
Баллы
43
Вчера сделал в PM
C#:
instance.Launch(ZennoLab.InterfacesLibrary.Enums.Browser.BrowserType.WithoutBrowser, false);
ночью с PM Ничего не делал. Сегодня пробую удалить папку
C#:
Directory.Delete(@"C:\FB_UA\Profiles\" + account_ID, true);
и получаю ошибку.
Выполнение действия CSharp OwnCode: Finish acc. Процесс не может получить доступ к файлу "000003.log", так как этот файл используется другим процессом.

При ручном удалении видно какой процесс держит файл (скрин 2)
 

Вложения

  • Спасибо
Реакции: Hannes

andrey-ka

Client
Регистрация
03.06.2018
Сообщения
854
Благодарностей
246
Баллы
43

Арман

Client
Регистрация
04.07.2019
Сообщения
137
Благодарностей
32
Баллы
28
Приложил шаблон к этому сообщению. Попробуйте запустить его в ZennoPoster.
При 40 запусках у меня ни разу не споткнулся.
Всё работает когда на кубиках в ZennoPoster но если использовать c# то не работает
вопрос так должно быть или это баг c# ?
 

nicanil

Client
Регистрация
06.03.2016
Сообщения
2 242
Благодарностей
1 804
Баллы
113
ночью с PM Ничего не делал. Сегодня пробую удалить папку
Тестировать надо в ZennoPoster. Браузер в ProjectMaker устроен таким образом, что даже когда Вы его отключаете, он всё-равно висит и использует файлы из профиль-папки. Чтоб освободить её в PM, надо переключиться на другой тип браузера.

Можете дать пример на c#?
Всё работает когда на кубиках в ZennoPoster но если использовать c# то не работает
вопрос так должно быть или это баг c# ?
Приложил, запуск и остановка инстанса на C#. Работает. Но использовать аккуратно, т.к. для профиль-папок тестировались стандартные кубики. В C# могут вылезти всякие косяки.
 

Вложения

Арман

Client
Регистрация
04.07.2019
Сообщения
137
Благодарностей
32
Баллы
28
Тестировать надо в ZennoPoster. Браузер в ProjectMaker устроен таким образом, что даже когда Вы его отключаете, он всё-равно висит и использует файлы из профиль-папки. Чтоб освободить её в PM, надо переключиться на другой тип браузера.




Приложил, запуск и остановка инстанса на C#. Работает. Но использовать аккуратно, т.к. для профиль-папок тестировались стандартные кубики. В C# могут вылезти всякие косяки.
Получается проблема именно в удаление директории через c# именно когда мы запускаем без браузера
С помощью кубика всё работает
Хотелось бы уточнить так должно быть или это баг c#
 

nicanil

Client
Регистрация
06.03.2016
Сообщения
2 242
Благодарностей
1 804
Баллы
113
Получается проблема именно в удаление директории через c# именно когда мы запускаем без браузера
С помощью кубика всё работает
Хотелось бы уточнить так должно быть или это баг c#
Вы пробовали шаблон из прошлого сообщения? Там включение и отключение инстанса происходит с помощью C#, у меня этот шаблон работает. После отключения инстанса (хоть кубиком, хоть кодом) надо сделать паузу (я поставил 5 секунд), чтоб ZennoPoster успел освободить все ресурсы и тогда уже можно удалять директорию профиль-папки (без разницы кодом или экшеном)
 
  • Спасибо
Реакции: Арман

andrey-ka

Client
Регистрация
03.06.2018
Сообщения
854
Благодарностей
246
Баллы
43
@nicanil
пытаюсь по твоему совету сделать в PM перезапуск браузера, а не просто отключение, но что-то все равно не получается.
После выполнение кода
C#:
instance.Launch(ZennoLab.InterfacesLibrary.Enums.Browser.BrowserType.Chrome, false);
браузер не запускается.

upd. Без режима отладки браузер запустился.
upd2. Папка при этом все равно не удаляется.
upd3. Твой шаблон точно так же не отрабатывает в PM, даже если вместо отключение браузера перезапустить Chrome.
 
Последнее редактирование:
  • Спасибо
Реакции: udder

nicanil

Client
Регистрация
06.03.2016
Сообщения
2 242
Благодарностей
1 804
Баллы
113
В ProjectMaker будет ошибка из-за особенностей работы браузера в нём - он "устроен таким образом, что даже когда Вы его отключаете, он всё-равно висит и использует файлы из профиль-папки. Чтоб освободить её в PM, надо переключиться на" FireFox.

После выполнение кода
Приведённый код - это запуск инстанса с простым профилем.
У метода instance.Launch есть перегрузка для запуска с профиль-папкой:
C#:
instance.Launch(ZennoLab.InterfacesLibrary.Enums.Browser.BrowserType.Chrome, "аргументы_запуска_chrome", "путь_к_профиль_папке");

Тестировать отключение инстанса и удаление профиль-папки в ZennoPoster, не ProjectMaker!
На всякий случай повторюсь: "Но использовать аккуратно, т.к. для профиль-папок тестировались стандартные кубики."
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)