Подскажите способ реализации

Malchishka

Client
Регистрация
10.11.2011
Сообщения
216
Благодарностей
36
Баллы
28
Не могу придумать способ связки нужных мне действий, прошу помощи у более прошаренных людей...

Суть:
Я скармливаю ZP список сайтов на которые он заходи и чекает на наличие нужных мне ссылок и в итоге выдаёт мне список ссылок вида:

Код:
http://domen1.com/discussion/tratata/post
http://domen1.com/discussion/tratatadfdfg/post
http://domen1.com/discussion/dfgdfgdfg/post
http://domen2.com/discussion/tdrgyrtyhdt/post
http://domen2.com/discussion/sfgybhdyhbdfg/post
http://domen2.com/discussion/tbgydtbf/post
http://domen2.com/discussion/stgbfgb/post
http://domen3.com/discussion/dgbyhfgbyhfyggchn/post
http://domenN.com/discussion/dfgbfxghbfghnfghnghnghc/post
Т.е. у каждого сайта будет 1-10 разных ссылок. Потом я регуляркой чищу ссылки и регаюсь на этих сайтах и сохраняю данные в другой список в виде:

Код:
domen1.com:пароль
domen2.com:пароль_другой
domen3.com:новый_пароль
domenN.com:всё_время_новый_пароль
Следующий шаблон должен взять рандомную ссылку из первого списка, залогиниться на сайте с помощью пароля из второго списка и оставить там моё сообщение.

Т.е. я не могу сообразить как мне соотнести ссылки (если для одного сайта может быть несколько ссылок) на нужные мне страницы из первого списка с паролями от этих сайтов из второго списка.
Получается, что в одном списке несколько разных ссылок на один сайт, а во втором списке пароль для входа на этот сайт.

Помогите связать данный клубок, а то что-то я запутался совсем...
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 407
Благодарностей
9 116
Баллы
113
можно так:
- берем случайную строку с урлом поста
- вычленяем из нее домен регуляркой (?<=http://).*?(?=/) - записываем в переменную {-Variable.domen-}
- второй список (в котором пароли) объединяем в переменную с разделителем - как в списке
- вычленяем пароль из этой переменной с помощью регулярки
Код:
(?<={-Variable.domen-}:-).*
 
  • Спасибо
Реакции: Malchishka

kyvour

Активный пользователь
Регистрация
17.05.2014
Сообщения
186
Благодарностей
36
Баллы
28
Хе-хе:-) Сам недавно с такой же фигней столкнулся... Почитал по поиск значений в списках и таблицах и т.д. и понял что на это уйдет много времени. В результате я стал юзать таблицу вида урл:домен:пароль
Для вашего случая записи выйдут такие: http://domenN.com/discussion/dfgbfxghbfghnfghnghnghc/post:domenN.com:всё_время_новый_пароль

Хотя для вашего случая я бы вообще сохранял список вида http://domenN.com/discussion/dfgbfxghbfghnfghnghnghc/post:пароль
Потом при переходе на страницу http://domenN.com/discussion/dfgbfxghbfghnfghnghnghc/post в переменных зенно будет присутствовать актуальная переменная {Page.FullDomain} - это domenN.com (если можно авторизироваться только с главной страницы, например)
 
  • Спасибо
Реакции: Malchishka

Malchishka

Client
Регистрация
10.11.2011
Сообщения
216
Благодарностей
36
Баллы
28
Народ, что-то у меня не получается никак соорганизовать так как хочется :bh: Помогите советом, люди добрые.

Вот у меня есть список в таком виде:
Код:
http://domen1.forum/35610655
http://domen1.forum/35605014
http://domen1.forum/210515151
http://domen1.forum/21061101410
http://domen1.forum/21061101510
http://domen1.forum/354460110
http://domen2.forum/2101601062
http://domen2.forum/2101601064
http://domen2.forum/2101601102
http://domen2.forum/356611024
http://domen3.forum/356105111
http://domen3.forum/356105101
...
Как видно, каждому домену принадлежит несколько ссылок (категорий). Мне нужно на каждом уникальном сайте из списка зарегистрироваться 1 раз (эту часть я сам решаю)) и как-то присандалить в списке/таблице пароль от этого сайта к каждой ссылке, которая на него ведёт.

Т.е. чтобы получилось так:
Код:
http://domen1.forum/35610655:password_ot_domen1
http://domen1.forum/35605014:password_ot_domen1
http://domen1.forum/210515151:password_ot_domen1
http://domen1.forum/21061101410:password_ot_domen1
http://domen1.forum/21061101510:password_ot_domen1
http://domen1.forum/354460110:password_ot_domen1
http://domen2.forum/2101601062:password_ot_domen2
http://domen2.forum/2101601064:password_ot_domen2
http://domen2.forum/2101601102:password_ot_domen2
http://domen2.forum/356611024:password_ot_domen2
http://domen3.forum/356105111:password_ot_domen3
http://domen3.forum/356105101:password_ot_domen3
...
Мне это нужно, что в дальнейшем в шаблоне постинга бралась сразу ссылка на ту категорию в которую будет публиковать и тут же пароль от этого сайта.
 

kyvour

Активный пользователь
Регистрация
17.05.2014
Сообщения
186
Благодарностей
36
Баллы
28
Это или поиск по таблице/списку делать (где-то темы на форуме видел) или сделать ленивый вариант (я бы лично так сделал)
имеем список домен:пароль и создать 2-й список ссылка:номер строки с доменом

потом просто из второго списка берем ссылку, берем №строки и вытаскиваем строку с этим номером с 1-го списка. сейчас голова не варит как точно это в постере сделать, но если 1 раз - то можно и руками:-)
 

Malchishka

Client
Регистрация
10.11.2011
Сообщения
216
Благодарностей
36
Баллы
28
Руками не вариант, т.к. возможно, это придёться делать периодически, а в списке 1,5К разных доменов, на которые ведёт разное количество ссылок, очень долго будет и нудно...
 

black_pariah

Client
Регистрация
08.09.2014
Сообщения
294
Благодарностей
91
Баллы
28
зарегистрировался,взял пароль в переменную ,взял строку домен на котором зарегистрировался,дописал в новый список строку в виде -переменная строка домен:переменная пароль
 

Malchishka

Client
Регистрация
10.11.2011
Сообщения
216
Благодарностей
36
Баллы
28
Так как же мне взять все строки с ссылками на сайт на котором я зарегистрировался в переменную, если строк-ссылок ведущих на один сайт у меня в списке несколько, а не одна? При условии, что на каждом сайте я регистрируюсь 1 раз, а не столько, сколько на него ссылок ведёт.
 

black_pariah

Client
Регистрация
08.09.2014
Сообщения
294
Благодарностей
91
Баллы
28
берите по одной а не все
 

Malchishka

Client
Регистрация
10.11.2011
Сообщения
216
Благодарностей
36
Баллы
28

black_pariah

Client
Регистрация
08.09.2014
Сообщения
294
Благодарностей
91
Баллы
28
если в ссылке есть домен1 то приписываем пароль не домен1, а другой не приписываем
также и домен2
 

Malchishka

Client
Регистрация
10.11.2011
Сообщения
216
Благодарностей
36
Баллы
28
если в ссылке есть домен1 то приписываем пароль не домен1, а другой не приписываем
также и домен2
Не ну так и я могу написать и написал, в принципе, выше. Меня интересует метод реализации, каким образом заставить определять зенку, что этот пароль нужно приписывать именно к этим ссылкам, а не к тем.
 

kyvour

Активный пользователь
Регистрация
17.05.2014
Сообщения
186
Благодарностей
36
Баллы
28
Думаю, самый быстрый и компактный вариант - искать домен (ну и пароль для него) сниппетом. Т.е. храним ссылки в 1-м списке, домен:пароль - в другом. Переходим по ссылке, берем ее домен, потом с# сниппетом ищем номер нужной строки. Способ, который приходит на ум - преобразовать список в массив строк, и в нем найти номер элемента, который начинается с нужного домена
 

Malchishka

Client
Регистрация
10.11.2011
Сообщения
216
Благодарностей
36
Баллы
28
Я вот так и думал, что решение будет в с#, но я в нём не ориентируюсь совсем...
 

rostonix

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

Malchishka

Client
Регистрация
10.11.2011
Сообщения
216
Благодарностей
36
Баллы
28
зачем хранить данные для одних и тех же сайтов в двух списках?
У меня сейчас 1 список, такой:

Код:
http://domen1.forum/35610655
http://domen1.forum/35605014
http://domen1.forum/210515151
http://domen1.forum/21061101410
http://domen1.forum/21061101510
http://domen1.forum/354460110
http://domen2.forum/2101601062
http://domen2.forum/2101601064
http://domen2.forum/2101601102
http://domen2.forum/356611024
http://domen3.forum/356105111
http://domen3.forum/356105101
...
Я зарегаюсь на сайтах domen1, domen2, domen3, domenN по одному разу и чтобы потом постить в каждую категорию, как показано выше, этого сайта, мне нужно сделать так, чтобы занка как-то понимала, что для ссылок
Код:
http://domen1.forum/35610655
http://domen1.forum/35605014
http://domen1.forum/210515151
http://domen1.forum/21061101410
http://domen1.forum/21061101510
http://domen1.forum/354460110
Нужно взять пароль 123456
Для ссылок
Код:
http://domen2.forum/2101601062
http://domen2.forum/2101601064
http://domen2.forum/2101601102
http://domen2.forum/356611024
Нужно взять пароль 9877654
И т.д.

Т.е. в идеале мне проще иметь список такого вида
Код:
http://domen1.forum/35610655:password_ot_domen1
http://domen1.forum/35605014:password_ot_domen1
http://domen1.forum/210515151:password_ot_domen1
http://domen1.forum/21061101410:password_ot_domen1
http://domen1.forum/21061101510:password_ot_domen1
http://domen1.forum/354460110:password_ot_domen1
http://domen2.forum/2101601062:password_ot_domen2
http://domen2.forum/2101601064:password_ot_domen2
http://domen2.forum/2101601102:password_ot_domen2
http://domen2.forum/356611024:password_ot_domen2
http://domen3.forum/356105111:password_ot_domen3
http://domen3.forum/356105101:password_ot_domen3
Получается, что ссылок на каждый сайт у меня несколько (в которые нужно потом постить), а пароль от каждого сайта у меня 1, как мне привязать к каждой ссылки ведущей на 1 сайт общий пароль?
 

kyvour

Активный пользователь
Регистрация
17.05.2014
Сообщения
186
Благодарностей
36
Баллы
28
  • Спасибо
Реакции: Malchishka

surrealmix

Client
Регистрация
07.03.2013
Сообщения
715
Благодарностей
409
Баллы
63
Код:
string currentDomain = project.Variables["CurrentDomain"].Value; //Текущий домен для которого ищем пароль
var passwordsList = project.Lists["Passwords"]; //Список вида domain:password
for(int i=0; i<passwordsList.Count; i++)
{
    string str = passwordsList.ElementAt(i);
    var domain = str.Split(':').First();
    var password = str.Split(':').Last();
    if(currentDomain == domain) return password; 
}
return "Пароль не найден";
 
  • Спасибо
Реакции: Malchishka

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