Как найти дубли

sekoan

Client
Joined
Jan 4, 2015
Messages
219
Reaction score
93
Points
28
Здравствуйте, при парсинге авито там были одинаковые новости, я этого не знал, теперь задача удалить эти дубли с моего сайта, подскажите как это реализовать?

Идея такая: взять список всех новостей и удалить от туда дубли, а уже эти дубли потом через DOM удалять через редактирование новостей.

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

VladZen

Administrator
Staff member
Joined
Nov 5, 2014
Messages
22,570
Reaction score
5,951
Points
113
Экшн Удалить дубли удаляет повторяющиеся строки в списке. Если у вас новости лежат в списке, то это то что вам нужно.
 

sekoan

Client
Joined
Jan 4, 2015
Messages
219
Reaction score
93
Points
28
Да в списке, у меня 90т строк, после Экшна Удалить дубли у меня становиться 85т строк, так вот мне как раз и нужно найти те 5000т строк которые удалились, как это сделать?
 

VladZen

Administrator
Staff member
Joined
Nov 5, 2014
Messages
22,570
Reaction score
5,951
Points
113
Ну тогда сравнивать исходный список и список с удаленными дублями. Как вариант можно создать третий список, в него добавить данные из первого и второго списков, и также провести в нем удаление дублей, тогда поидее остануться те самые 5000 т строк.:ce:

Список1 - исходный
Список2 - с удаленными дублями
Список3 - Список1+Список2+Очистка дублей.
 

sekoan

Client
Joined
Jan 4, 2015
Messages
219
Reaction score
93
Points
28
Как то не работает, взял для примера 20000т новостей
Список1 - исходный (20000т)
Список2 - с удаленными дублями (18028т)
Список3 - Список1(20000т)+Список2(18028т)+Очистка дублей.= (18028т)
 

VladZen

Administrator
Staff member
Joined
Nov 5, 2014
Messages
22,570
Reaction score
5,951
Points
113
Тогда видимо через C# только получится. Нужно сравнивать исходный и конечный списки.
 

Dimionix

Moderator
Joined
Apr 9, 2011
Messages
3,068
Reaction score
3,130
Points
113
Так вот я не могу понять как найти те слова которые удаляются через экшен Работа со списком-удалить дубли, (мне как раз эти дубли и нужны), или есть другой способ?
Если еще актуально, да и вообще мало ли пригодится, вот:
 

Attachments

  • Thank you
Reactions: Marcelo

sekoan

Client
Joined
Jan 4, 2015
Messages
219
Reaction score
93
Points
28
Так вот я не могу понять как найти те слова которые удаляются через экшен Работа со списком-удалить дубли, (мне как раз эти дубли и нужны), или есть другой способ?
Если еще актуально, да и вообще мало ли пригодится, вот:
Спасибо, в своем примере я удалил через mysql запрос, может кому то тоже нужно будет, обращайтесь)
А так в дальнейшем этот пример буду использовать, спасибо!)
 
  • Thank you
Reactions: Marcelo

Marcelo

Client
Joined
Dec 16, 2014
Messages
109
Reaction score
17
Points
18
@Dimionix
@sekoan
доброй ночи, меня тоже интересуют дубли из списка, но проект выполненный на c#, который прикреплен чуть выше по каким-то причинам у меня срабатывает не полностью, а точнее ListIn и ListOut прекрасно заполняются, а вот такой нужный мне список BlackList остается пустым, при том что в исходном списке полно дублей. Могли бы вы мне пожалуйста подсказать возможную причину почему у меня BlackList пуст или подсказать другой способ найти дубли ? (в исходном списке у меня сплошь числа)
 

rostonix

Известная личность
Joined
Dec 23, 2011
Messages
29,067
Reaction score
5,719
Points
113
@Dimionix
@sekoan
доброй ночи, меня тоже интересуют дубли из списка, но проект выполненный на c#, который прикреплен чуть выше по каким-то причинам у меня срабатывает не полностью, а точнее ListIn и ListOut прекрасно заполняются, а вот такой нужный мне список BlackList остается пустым, при том что в исходном списке полно дублей. Могли бы вы мне пожалуйста подсказать возможную причину почему у меня BlackList пуст или подсказать другой способ найти дубли ? (в исходном списке у меня сплошь числа)
вам нужно отфильтровать по блеклисту, оставив только уникальные значения?
 
  • Thank you
Reactions: Marcelo

Marcelo

Client
Joined
Dec 16, 2014
Messages
109
Reaction score
17
Points
18
вам нужно отфильтровать по блеклисту, оставив только уникальные значения?
в моем "списке 1" есть дубли и мне нужно получить эти дубли отдельным "списком 2", т.е. видеть в новом текстовом файле какие именно значения повторялись в "списке 1".
 

rostonix

Известная личность
Joined
Dec 23, 2011
Messages
29,067
Reaction score
5,719
Points
113
в моем "списке 1" есть дубли и мне нужно получить эти дубли отдельным "списком 2", т.е. видеть в новом текстовом файле какие именно значения повторялись в "списке 1".
это можно стандартным экшеном в цикле сделать. объединить строки списка 2
брать строку из списка 1, операции с текстом - regex , ищем в объединенных данных встречается ли текущая строка. если не пустота найдена - добавлять в список 3
и так для всех строк
 
  • Thank you
Reactions: ogogo and Marcelo

serg1208

Client
Joined
Apr 17, 2018
Messages
331
Reaction score
15
Points
18
это можно стандартным экшеном в цикле сделать. объединить строки списка 2
брать строку из списка 1, операции с текстом - regex , ищем в объединенных данных встречается ли текущая строка. если не пустота найдена - добавлять в список 3
и так для всех строк
а если 1000 000 строк ? это же долго. можно снипетом ?
 

serg1208

Client
Joined
Apr 17, 2018
Messages
331
Reaction score
15
Points
18
Если еще актуально, да и вообще мало ли пригодится, вот:
а как задать список Blacklist ?
 

serg1208

Client
Joined
Apr 17, 2018
Messages
331
Reaction score
15
Points
18
Спасибо, в своем примере я удалил через mysql запрос, может кому то тоже нужно будет, обращайтесь)
А так в дальнейшем этот пример буду использовать, спасибо!)
каааак?
 

alex46546

Новичок
Joined
Jan 24, 2024
Messages
7
Reaction score
0
Points
1
Короче я для себя нашел способ как можно находить в списке без перебора: берем блок Таблицы-Операции над таблицей, в нем выбираем Взять строки - Содержит текст и по нужному тексту(или переменной с текстом) находим в таблице все что нужно!
 

Users Who Are Viewing This Thread (Total: 1, Members: 0, Guests: 1)