
Передо мной появилась задача – определить геоположение прокси , а так же чек ip адреса. Статические прокси сервера , не требуют определения внешнего ip адреса, т.к. мы его видим в самом прокси. У меня же задача стояла – определение этих параметров на динамических мобильных прокси.
Так же решение должно было соответствовать минимальным требованиям:
- массовая проверка прокси;
- безопасность чека, данные не должны сливаться;
- простота использования.
После поиска прокси чекера , пришёл к выводу что ни один из найденных не соответствуют моим требования.
Было решено написать скрипт bash в среде линукс с использованием сервиса ipinfo.io
Выводные данные для каждого прокси:
- ip адрес;
- ASN (уникальный номер автономной системы провайдера);
- провайдер;
- город.
Первым делом регистрируемся в сервисе ipinfo.io , получаем токен. Бесплатная версия позволяет делать 50к запросов в месяц, этого предостаточно.
Создаём скрипт checkip.sh
Я использую текстовый редактор nano
nano checkip.sh
Открываетм конфиг и вставляем следующее содержимое
#!/bin/sh
mv ip.list ip.list.old
n=1
token=*******
for i in `cat proxy.list`; do
CUR1=`curl -s --connect-timeout 5 --proxy $i ipinfo.io/ip`
CUR2=`curl -s --connect-timeout 5 --proxy $i -u $token: ipinfo.io/org`
CUR3=`curl -s --connect-timeout 5 --proxy $i -u $token: ipinfo.io/city`
echo "$n ${CUR1} ${CUR2} ${CUR3}" >> ip.list
((n+=1))
done
укажем свой токен
Сохраняем скрипт и даём ему права на исполнение скрипта
chmod +x checkip.sh
Создаём документ proxy.list и вставляем прокси для чека в формате login:pass@ip:port в столбик.
Всё что нам останется сделать, это запустить скрипт
bash checkip.sh
Все данные будут импортироваться в файл ip.list примерно следующего содержания:
1 176.59.4.11 AS15378 T2 Mobile LLC Centralniy
2 217.118.92.139 AS16345 Public Joint Stock Company Vimpel-Communications St Petersburg
3 217.118.92.143 AS16345 Public Joint Stock Company Vimpel-Communications St Petersburg
4 31.173.80.42 AS25159 PJSC MegaFon Moscow
5 31.173.86.215 AS25159 PJSC MegaFon Moscow
6 31.173.84.239 AS25159 PJSC MegaFon Moscow
7 31.173.87.6 AS25159 PJSC MegaFon Moscow
8 31.173.80.231 AS25159 PJSC MegaFon Moscow
P.S. Как определяет местоположения яндекс и думаю не только он...
