Click

Анонімайзер як заміна проксі. Перевірка анонімайзерів на валідність

Скрипт для составления и проверки списка веб-прокси

Натрапив на цікаву замітку під назвою " І ще трохи про Google Hack ", в якій автор описує використання анонімайзерів (приклад Анонімайзера - сайт Anonymouse ) Замість публічних проксі для обходу капчі в Google.
Такий спосіб використання анонімайзерів мені теж сподобався і я вирішив написати свій скрипт для збору і перевірки на валідність списку публічних веб-проксі.

Переваги Анонімайзера перед "класичним" публічним проксі

  • Анонімайзери, в відрізняє від публічних проксі, рідко помирають і практично завжди доступні онлайн
  • Анонімайзери зазвичай забезпечують швидкість роботи вище, ніж у публічних проксі або Tor
  • Анонімайзер буде приховувати не тільки ваш IP-адресу, але і, залежно від налаштувань, може приховати cookies, user-agent і т.п. "Хвости"
  • Роботі через веб-проксі простіше "навчити" свою програму - досить передавати закодовану рядок інтерфейсу Анонімайзера

Для чого може стати в нагоді і чим може бути корисний анонімайзер (веб-проксі)?

  • для використання спільно з парсером видачі пошукових систем - щоб обходити капчу, що видається ПС при вступі великої кількості запитів з однієї адреси
  • відправивши запити до потрібного сайту через різні анонімайзери, можна накрутити лічильник відвідувань (ця гіпотеза вимагає перевірки)
  • для постінгу скриптами в різні форуми, для постінгу коментарів на сайти
  • при будь-якому іншому парсінгу, де існує небезпека бана, анонімайзер також стане в нагоді (наприклад при парсінгу каталогу з сайту nakolesah.ru , про який я згадував)

Збираємо список публічних веб-проксі

Збірку і перевірку списку анонімайзерів ми довіримо perl-скрипту, деякі фрагменти якого будуть приведені нижче, а повний текст як завжди доступний для завантаження в розділі " Софт "(там же він буде і оновлюватися).

Щоб запустити скрипт в режимі складання списку проксі, потрібно передати через опцію-i значення google або ajax:
anocheck.pl -i google
Розшифровка опцій:

  • google - для пошуку публічних веб-проксі використовується парсинг видачі веб-пошуку Google. Список в цьому випадку виходить досить великий, але існує ймовірність отримати капчу або тимчасовий бан
  • ajax - список проксі виходить із запиту до Google API для пошуку. На виході всього 8 результатів, але немає капчі.

Мені видається оптимальним такий варіант використання скрипта - первинний список проксі складається за допомогою опції google, потім на перевірку передається файл зі списком.

Для пошуку анонімайзерів, що працюють на движках PHPProxy і Glype використовуються наступні параметри запиту:

1
2
3
4
# 1 - на движку PHPProxy
= '"Rotate13" "Base64" "Strip" inurl:index.php?q=' ; my $ phproxy_sreq = '"Rotate13" "Base64" "Strip" inurl: index.php? q =';
# 2 - на движку Glype
= '"Encode URL" "Allow Cookies" "Remove Scripts" inurl:browse.php?u=' ; my $ glype_sreq = '"Encode URL" "Allow Cookies" "Remove Scripts" inurl: browse.php? u =';

Далі слід парсинг результатів видачі Google та занесення адрес знайдених веб-проксі в список:

1
2
3
4
5
6
7
8
# 1 - шукати засновані на движку PHProxy
$source =~ m #<h3 class="r"><a href="(https?://w{0,3}\.?[\w-]+\.[az]{2,4}[/\w-]*/index\.php)\?q#ig) { while ($ source = ~ m # <h3 class="r"> <a href = "(https?: / / w {0,3} \.? [\ w-] + \. [az] {2, 4} [/ \ w-] * / index \. php) \? q # ig) {
{ $1 } ++; $ Proxy_list -> {$ 1} + +;
}
# 2 - шукати працюють на Glype
$source =~ m #<h3 class="r"><a href="(https?://w{0,3}\.?[\w-]+\.[az]{2,4}[/\w-]*/browse\.php)\?u#ig) { while ($ source = ~ m # <h3 class="r"> <a href = "(https?: / / w {0,3} \.? [\ w-] + \. [az] {2, 4} [/ \ w-] * / browse \. php) \? u # ig) {
{ $1 } ++; $ Proxy_list -> {$ 1} + +;
}

Перевірка анонімайзерів на валідність

Крім створення списку веб-проксі, скрипт може перевірити вже існуючий список на валідність, достатньо передати йому через опцію-i ім'я файлу, який містить список проксі:
anocheck.pl -i proxy.txt

Механізм перевірки знайдених проксі на валідність теж не складний (його ідею я взяв із замітки, зазначеної в першому абзаці) - на кожен знайдений анонімайзер відправляється запит на відкриття головної сторінки Google, яка потім парсити на предмет наявності в ній правильного заголовка. Якщо заголовок присутня - вважаємо проксі робітникам, інакше - переносимо в список неробочих:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
( keys %$proxy_list ) { foreach my $ proxy_url (keys% $ proxy_list) {

= $ua -> get ( $proxy_url . '?q=' . encode_base64 ( 'http://www.google.com' ) ) ; my $ response = $ ua -> get ($ proxy_url. '? q ='. encode_base64 ('http://www.google.com'));
# Warn "Error: $ response-> status_line \ n" unless $ response-> is_success;

$response -> decoded_content =~ m #<title>Google</title>#) { if ($ response -> decoded_content = ~ m # <title> Google </ title> #) {
"%-45s %10s" , $proxy_url , " \x 1b[32m [OK] \x 1b[0m \n " ) ; printf ("%-45s% 10s", $ proxy_url, "\ x 1b [32m [OK] \ x 1b [0m \ n");
}
else {
"%-45s %10s" , $proxy_url , " \x 1b[31m [ERROR] \x 1b[0m \n " ) ; printf ("%-45s% 10s", $ proxy_url, "\ x 1b [31m [ERROR] \ x 1b [0m \ n");
@bad_proxy , $proxy_url ) ; push (@ bad_proxy, $ proxy_url);
$proxy_list -> { $proxy_url } ) ; delete ($ proxy_list -> {$ proxy_url});
}
}

Результати валідації списку проксі

В результаті перевірки проксі на валідність виходять два файли (за замовчуванням мають імена good.txt і bad.txt), що містять, відповідно, списки пройшли і не пройшли валідацію анонімайзерів.

Валідні анонімайзери, як уже говорилося вище, можна підключити до парсеру, а невалідним - час від часу перевіряти заново (список валідних не перезаписується, а доповнюється), а загалом використання знайдених веб-проксі залежить від наявності власних ідей у ​​кожного, яких я і бажаю вам побільше на прощання!

Ще на схожі теми:

Category Рубрики: Інтернет , Кодинг , Пошуковики | Tag Comments 8 коментарів

Comments

8 коментарів to "Анонімайзер як заміна проксі. Перевірка анонімайзерів на валідність "

  1. Антон пише:

    Відмінна стаття, упевнений буде корисним для багатьох. Шкода, мій технічний рівень не дозволяє скористатися цим.

    • dimio пише:

      Скористатися-то вроде не складно - скачав програму, запустив, отримав результат.

      • Антон пише:

        Дмитро, як Ви думаєте, це можна буде використовувати для постінгу в різні акки однієї блоговому системи?

        • dimio пише:

          Думаю, що можна. Перевірити не складно - досить руками зайти через анонімайзер і виконати потрібні дії.

  2. Дякуємо за згадка мого блогу :) Сайт у Вас речі цікавий, підписався.

  3. Ден пише:

    ось це здорово! хороша стаття!

  4. anka пише:

    Я завжди користуюся сайтом dostupest.ru, на інших вирусов можна зловити

Leave a Reply