[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Накатал парсер прокси с форумов
ADiel
http://ilyaplot.ru/proxy/
Вот набросал только что парсер прокси листов с форумов, блогов итд...
Для примера можно попробовать ввести
http://www.free-proxy-list.info/free-proxy...ing-proxies.php


Сейчас добавлю чекер, запись в базу данных и валидацию.

Полезна ли тулза? Стоит ее развить?

И какие самые простые методы защиты от использования как API этой фишки можно прикрутить? Как то мозг уже не хочет думать адекватно.



Спустя 1 минута, 15 секунд (14.03.2012 - 14:15) ADiel написал(а):
Кстати, есть механизм парсинга http://www.checker.freeproxy.ru/checker/la...ked_proxies.php , но пока что не включал его smile.gif

Спустя 17 минут, 6 секунд (14.03.2012 - 14:33) Игорь_Vasinsky написал(а):
Цитата
Вот набросал только что парсер прокси листов


и у меня было дело http://proxylist.vasinsky.ru/

Спустя 12 минут, 25 секунд (14.03.2012 - 14:45) ADiel написал(а):
Я хочу сделать максимально просто =)

Спустя 2 минуты, 11 секунд (14.03.2012 - 14:47) Игорь_Vasinsky написал(а):
а я максимально платно. но пока времени нет добить

Спустя 12 минут, 15 секунд (14.03.2012 - 14:59) ADiel написал(а):
Вот только проблема с регулярочкой

$patterns[] = "/([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}):([0-9]{4,6})/isU";


Я не силен в регулярках =)
У меня получается, что выбирается минимальный порт. Т.е. минимум - 4.
Поставлю {2,6} - получу порт не больше 2, даже если он например 8080.
Как исправить?

Спустя 4 минуты, 4 секунды (14.03.2012 - 15:03) Игорь_Vasinsky написал(а):
#\d{3}\.\d{3}\.\d{3}\:\d{2,4}#

Спустя 5 минут, 30 секунд (14.03.2012 - 15:09) ADiel написал(а):
#(\d{3}\.\d{3}\.\d{3}\.\d{3})\:(\d{2,4})#

так работает. Только отличия от моей не пойму

Спустя 2 минуты, 59 секунд (14.03.2012 - 15:12) ADiel написал(а):
http://www.free-proxy-list.info/free-proxy...elite-proxy.php
тут парсит 3, а их 5 штук
Вообще у меня вроде бы работало... Хз чего я с регуляркой накрутил =)

Спустя 4 минуты, 6 секунд (14.03.2012 - 15:16) Игорь_Vasinsky написал(а):
это же паттерн на соответствие ip адреса+порт

Цитата
тут парсит 3, а их 5 штук
как выглядят? может модификатор s добавить

Спустя 4 минуты, 28 секунд (14.03.2012 - 15:20) ADiel написал(а):
Не помогло

Спустя 2 минуты, 37 секунд (14.03.2012 - 15:23) Игорь_Vasinsky написал(а):
ну дай линк то

Спустя 4 минуты, 42 секунды (14.03.2012 - 15:28) ADiel написал(а):
Так давал же
http://www.free-proxy-list.info/free-proxy...elite-proxy.php


<pre>


format:
<proxy_server_name> : <proxy_port_number>

217.174.242.166:3128
217.217.136.121:80
219.198.208.140:8080
92.243.17.151:23332
95.43.253.242:3128



</pre>


Ничего особенного там нет


Результат граббинга:
217.174.242.166:3128
217.217.136.121:80
219.198.208.140:8080


"/(\d{3}\.\d{3}\.\d{3}\.\d{3})\:(\d{2,6})/s"

А это регулярочка

Спустя 4 минуты, 29 секунд (14.03.2012 - 15:32) Игорь_Vasinsky написал(а):
Цитата
92.243.17.151:23332


#(\d{3}\.\d{3}\.\d{3}\.\d{3})\:(\d{2,5})#

Спустя 1 минута, 43 секунды (14.03.2012 - 15:34) ADiel написал(а):
У меня до 6 расширено

Спустя 4 минуты, 40 секунд (14.03.2012 - 15:39) Игорь_Vasinsky написал(а):
фу ты.... они же по 2 цифры в группе могут)))

   $page = file_get_contents('http://www.free-proxy-list.info/free-proxy-list/elite-proxy.php');
$pattern = "#\d{1,3}\.\d{1,3}\.\d{1,3}\:\d{2,}#s";

preg_match_all($pattern, $page, $proxy);

echo '<pre>' . print_r($proxy, 1) . '</pre>';


Array
(
[0] => Array
(
[0] => 174.242.166:3128
[1] => 217.136.121:80
[2] => 198.208.140:8080
[3] => 243.17.151:23332
[4] => 43.253.242:3128
)

)

Спустя 1 минута, 31 секунда (14.03.2012 - 15:40) ADiel написал(а):
Супер. Спасибо =)

Спустя 36 секунд (14.03.2012 - 15:41) ADiel написал(а):
Только IP не верный

Спустя 2 минуты, 33 секунды (14.03.2012 - 15:43) Игорь_Vasinsky написал(а):
да я вообще косепор :lol: :lol: :lol:

их же 4 группы

   $pattern = "#\d{2,3}\.\d{2,3}\.\d{2,3}\.\d{2,3}\:\d{2,6}#s";


Array
(
[0] => Array
(
[0] => 217.174.242.166:3128
[1] => 217.217.136.121:80
[2] => 219.198.208.140:8080
[3] => 92.243.17.151:23332
[4] => 95.43.253.242:3128
)

)


Спустя 2 минуты, 21 секунда (14.03.2012 - 15:46) ADiel написал(а):
Так работает отлично:
$patterns[] = "#(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\:(\d{2,})#s";

Так не все проходит:
$patterns[] = "#(\d{2,3}\.\d{2,3}\.\d{2,3}\.\d{2,3})\:(\d{2,6})#s";


А почему, я так и не понял

Спустя 1 минута, 3 секунды (14.03.2012 - 15:47) Игорь_Vasinsky написал(а):
НУ ЛАН. просто я не видел что адрес был такой

1.124.213.1:8080

Спустя 50 секунд (14.03.2012 - 15:48) Игорь_Vasinsky написал(а):
\d{1,3} - от 1 до 3х цифр подряд
\d{2,3} ......

Спустя 5 минут, 37 секунд (14.03.2012 - 15:53) ADiel написал(а):
Я тоже не заметил этого )

Спустя 42 минуты, 31 секунда (14.03.2012 - 16:36) ADiel написал(а):
Ну и нагрузочка на mysql =)
Надо видимо очереди создавать для добавления и отдельным демоном через gearman


_____________
Ищи меня тут (ilyaplot)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.