Вопрос по поводу получения данных через гет запрос

  • Автор темы Автор темы S16er1um
  • Дата начала Дата начала

S16er1um

Client
Регистрация
14.04.2016
Сообщения
826
Реакции
241
Баллы
43
Вот есть такая страничка. Я хочу забирать с неё эмэйлы. Делать хочу это быстро,а соответственно через гет запрос. Когда вытаскиваю её через запрос - эмэйла на страничке нет(
Делаю то же самое через веб версию, и беру через DOM и всё выходит нормально, но через веб версию долго(
Естественно, подозреваю что всё дело в JS. Подскажите, как сделать так, чтоб брать страничку гет запросом и получать на ней мыло.
Вот страничка, если кто решит помочь)
http://chemodanchik.net/memberlist.php?mode=viewprofile&u=84
upload_2017-8-7_16-2-51.png
Конкретно вопрос звучит так. Что проще? Парится с гет запросами или не насиловать себя и спарсить всё через ВЭБ версию? А точнее, можно ли подобрать просто 1 такой гет запрос с нужными параметрами, чтоб не отлавливать все параметры которые нужно передать каждый раз при очередном парсинге странички?
 
Все верно, email кодируется через js
В исходном коде это так:
upload_2017-8-7_19-25-2.png

Если клацнуть по ссылке:
upload_2017-8-7_19-25-29.png

Статья на эту тему http://blog.lukmus.ru/2016/07/24/cloudflare-email-protection-decoder/

Получаем /cdn-cgi/l/email-protection#fd8992909f9284cacabd909c9491d38f88
fd8992909f9284cacabd909c9491d38f88 - и есть закодированный email
В статье выше, есть примеры декодировщиков на php, python, ruby.
Остается перенести на c# или найти готовый код

Ну или поковырять js-кодировщик :)
 
  • Оценить
Реакции: S16er1um и kagorec
Вот кривенький, но рабочий код на js:
Код:
Развернуть Свернуть Копировать
var s, a, i, j, r, c;
a = "fd8992909f9284cacabd909c9491d38f88";
s = '';
r = parseInt(a.substr(0, 2), 16);
for (j = 2; a.length - j; j += 2)
    {
        c = parseInt(a.substr(j, 2), 16) ^ r;
        s += String.fromCharCode(c);
    }
s = s + "";
js не изучал, догадываюсь что s = s + ""; (аналог return) так не правильно :-)
Знатоки, подскажите

upload_2017-8-7_20-1-42.png

1. Парсишь регуляркой значение fd8992909f9284cacabd909c9491d38f88 (см. пред. мой пост)
2. Закидываешь его в js код
3. Получаешь готовый email
 
Последнее редактирование:
  • Оценить
Реакции: S16er1um
Вот кривенький, но рабочий код на js:
Код:
Развернуть Свернуть Копировать
var s, a, i, j, r, c;
a = "fd8992909f9284cacabd909c9491d38f88";
s = '';
r = parseInt(a.substr(0, 2), 16);
for (j = 2; a.length - j; j += 2)
    {
        c = parseInt(a.substr(j, 2), 16) ^ r;
        s += String.fromCharCode(c);
    }
s = s + "";
js не изучал, догадываюсь что s = s + ""; (аналог return) так не правильно :-)
Знатоки, подскажите

Посмотреть вложение 22589

1. Парсишь регуляркой значение fd8992909f9284cacabd909c9491d38f88 (см. пред. мой пост)
2. Закидываешь его в js код
3. Получаешь готовый email
Спасибо, сегодня уже конец рабочего дня, поэтому буду пытаться завтра) надеюсь разберусь, а вкрайнем случае всё таки буду делать через WEB версию(

Но по сути ваши примеры довольно понятные
 
  • Оценить
Реакции: SHELBY
Вот кривенький, но рабочий код на js:
Код:
Развернуть Свернуть Копировать
var s, a, i, j, r, c;
a = "fd8992909f9284cacabd909c9491d38f88";
s = '';
r = parseInt(a.substr(0, 2), 16);
for (j = 2; a.length - j; j += 2)
    {
        c = parseInt(a.substr(j, 2), 16) ^ r;
        s += String.fromCharCode(c);
    }
s = s + "";
js не изучал, догадываюсь что s = s + ""; (аналог return) так не правильно :-)
Знатоки, подскажите

Посмотреть вложение 22589

1. Парсишь регуляркой значение fd8992909f9284cacabd909c9491d38f88 (см. пред. мой пост)
2. Закидываешь его в js код
3. Получаешь готовый email

В общем, ещё раз спасибо большое, сваял шаблон за 3 минуты.
 
  • Оценить
Реакции: SHELBY

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