Как сделать блек лист

kirilf79

Пользователь
Регистрация
28.01.2015
Сообщения
114
Благодарностей
0
Баллы
16
Приветствую! Видел уже эту тему в топике этом, но так ее и не нашел. Вопрос такой. как возможно вообще сделать работы с черным списком. К примеру при инвайтинге, что бы не отсылать инвайты одним и тем же людям.
И еще вопрос. Как сделать так, что бы шаблон сам создавал папку и текстовый документ для каждой группы если рассматривать инвайтинг в группу
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 714
Баллы
113

zortexx

Client
Регистрация
19.09.2011
Сообщения
2 520
Благодарностей
1 226
Баллы
113
Вариантов масса:
  1. Средствами zenno в цикле по количеству элементов блеклиста удаляем из конечного списка все совпадающие элементы.
  2. C# - то же самое, только на сишарпе.
  3. C# - объединяем оба списка и удаляем без остатка все дубли.
  4. C# - создаем третий список и складываем туда все элементы списка которых нет в блеклисте.
  5. Возможны еще варианты.
 

kirilf79

Пользователь
Регистрация
28.01.2015
Сообщения
114
Благодарностей
0
Баллы
16
Экшены работа с директориями, файлами.

http://www.zennoexperts.com/downloads/blacklist.xmlz

С Экшеном Блека не разобрался. что там необходимо прописывать и по какому принципу он работает?

Что здесь нужно изменить в коде?


List<string> blacklist = project.Lists["List1"].ToList();
List<string> newdata = System.IO.File.ReadAllLines(project.Variables["List2"].Value).ToList();
var good = project.Lists["List3"];
lock(SyncObjects.ListSyncer)
{
List<string> exclude = new List<string>();
exclude = newdata.Except(blacklist).ToList();
foreach(string data in exclude)
{good.Add(data);}
}
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 714
Баллы
113
List1 - имя списка с плохими данными по которым проверяем
List<string> newdata = System.IO.File.ReadAllLines(project.Variables["List2"].Value).ToList();
заменить на List<string> newdata = project.Lists["List2"].ToList();
List2 - Имя списка с новыми значениями
List3 - имя списка куда складывать только те, которые есть в новых, но которых нет в блеклисте
 

kirilf79

Пользователь
Регистрация
28.01.2015
Сообщения
114
Благодарностей
0
Баллы
16
List1 - имя списка с плохими данными по которым проверяем
List<string> newdata = System.IO.File.ReadAllLines(project.Variables["List2"].Value).ToList();
заменить на List<string> newdata = project.Lists["List2"].ToList();
List2 - Имя списка с новыми значениями
List3 - имя списка куда складывать только те, которые есть в новых, но которых нет в блеклисте
А как корректно указать имя списка? путь к этому списку? не совсем понял как прописывать.
у меня будет 2 списка 1 (список спарсенных друзей с аккаунта) 2 (блек лист). вот мне нужно что бы акк уходил в блек после отправления инвайта. и после этого на этот акк уже не шли повторно приглашения при повторной авторизации и парсинге
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 714
Баллы
113
Имя списка это его имя.

upload_2015-3-4_11-54-52.png


Делайте три списка, чтобы логичнее. И будете брать уже строки из списка List3 отфильтрованного А после использования добавлять в список List1
 

kirilf79

Пользователь
Регистрация
28.01.2015
Сообщения
114
Благодарностей
0
Баллы
16
Думаю мне этот вариант не совсем подойдет. Поскольку для каждой отдельной группы будет создаваться свой файл с текстовым документом куда будут сливаться отработанные акки
 

kirilf79

Пользователь
Регистрация
28.01.2015
Сообщения
114
Благодарностей
0
Баллы
16
Ну или подскажите как тогда прописать название списка если его создает экшен создания файлов
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 714
Баллы
113
Список это список в проекте http://wiki.zennolab.com/doku.php?id=ru:lists
Если нужно привязывать список к файлу, то есть экшен Операции со списком - Привязать к файлу.
 
  • Спасибо
Реакции: kirilf79

kirilf79

Пользователь
Регистрация
28.01.2015
Сообщения
114
Благодарностей
0
Баллы
16
Список это список в проекте http://wiki.zennolab.com/doku.php?id=ru:lists
Если нужно привязывать список к файлу, то есть экшен Операции со списком - Привязать к файлу.
А шаблон с экшеном почему то не работает у меня. я привязываю к спискам в шаблоне текстовые документы в формате ютф 8, но шаблон экшен блек листа не работает...
 

kirilf79

Пользователь
Регистрация
28.01.2015
Сообщения
114
Благодарностей
0
Баллы
16
Внутри экшена ничего не менял. даже названия оставил родными, просто привязал списки. в первом списке плохзие номера, второй список основа для обработки. а третий пустой файл для загрузки хороших значений
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 714
Баллы
113
Вы бы хотя бы написали что за ошибки в логи.
 

kirilf79

Пользователь
Регистрация
28.01.2015
Сообщения
114
Благодарностей
0
Баллы
16
d499edf2-6a11-4735-a3f8-9dd47517ca67 Вот код ошибки....
 

kirilf79

Пользователь
Регистрация
28.01.2015
Сообщения
114
Благодарностей
0
Баллы
16
Если не ошибаюсь жалуется на второй файл..... "нет такой переменной"(list2).
 

kirilf79

Пользователь
Регистрация
28.01.2015
Сообщения
114
Благодарностей
0
Баллы
16

kirilf79

Пользователь
Регистрация
28.01.2015
Сообщения
114
Благодарностей
0
Баллы
16

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 714
Баллы
113

kirilf79

Пользователь
Регистрация
28.01.2015
Сообщения
114
Благодарностей
0
Баллы
16

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 714
Баллы
113
  • Спасибо
Реакции: kirilf79

kirilf79

Пользователь
Регистрация
28.01.2015
Сообщения
114
Благодарностей
0
Баллы
16
Большое спасибо! Извиняюсь за невнимательность!
 

ZSHab

Client
Регистрация
29.10.2014
Сообщения
220
Благодарностей
22
Баллы
18
Такой код должен получиться?

List<string> blacklist = project.Lists["List1"].ToList();
List<string> newdata = project.Lists["List2"].ToList();
var good = project.Lists["List3"];
lock(SyncObjects.ListSyncer)
{
List<string> exclude = new List<string>();
exclude = newdata.Except(blacklist).ToList();
foreach(string data in exclude)
{good.Add(data);}
}
 

ZSHab

Client
Регистрация
29.10.2014
Сообщения
220
Благодарностей
22
Баллы
18
У меня не выполняет добавление строк в List3 значений
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 714
Баллы
113
Какие то ошибки? Списки созданы? Привязаны к файлам?
 

ZSHab

Client
Регистрация
29.10.2014
Сообщения
220
Благодарностей
22
Баллы
18
конечно
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 714
Баллы
113
Пример прикладывайте с файлами вместе. Не знаю что ответить на ваше "конечно")
 

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