Анонімайзер як заміна проксі. Перевірка анонімайзерів на валідність
Натрапив на цікаву замітку під назвою " І ще трохи про Google Hack ", в якій автор описує використання анонімайзерів (приклад Анонімайзера - сайт ) Замість публічних проксі для обходу капчі в 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), що містять, відповідно, списки пройшли і не пройшли валідацію анонімайзерів.
Валідні анонімайзери, як уже говорилося вище, можна підключити до парсеру, а невалідним - час від часу перевіряти заново (список валідних не перезаписується, а доповнюється), а загалом використання знайдених веб-проксі залежить від наявності власних ідей у кожного, яких я і бажаю вам побільше на прощання!
Ще на схожі теми:
Рубрики: Інтернет , Кодинг , Пошуковики |
8 коментарів 


Відмінна стаття, упевнений буде корисним для багатьох. Шкода, мій технічний рівень не дозволяє скористатися цим.
Скористатися-то вроде не складно - скачав програму, запустив, отримав результат.
Дмитро, як Ви думаєте, це можна буде використовувати для постінгу в різні акки однієї блоговому системи?
Думаю, що можна. Перевірити не складно - досить руками зайти через анонімайзер і виконати потрібні дії.
Дякуємо за згадка мого блогу
Сайт у Вас речі цікавий, підписався.
І Вам спасибі на доброму слові, радий знайомству так сказати
ось це здорово! хороша стаття!
Я завжди користуюся сайтом dostupest.ru, на інших вирусов можна зловити