Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi: Сети
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
xhugo
1 / 1 / 2
Регистрация: 26.09.2010
Сообщений: 73
1

Парсинг страны на GeoIP

14.01.2011, 13:58. Просмотров 1646. Ответов 10
Метки нет (Все метки)

Не получается спарсить текст такого вида:
HTML5
1
2
<td align="right"><span class="arial">Country code:</span></td>
                RU (RUS)</td>
нужно выдрать RU (RUS)

Пробовал по разному, а так сайт:http://geoiptool.com
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.01.2011, 13:58
Ответы с готовыми решениями:

GeoIP. Получить название страны по двухсимвольному коду
Не нашел такую функцию, которая из кодов 'RU', 'TH', получает название страны...

Образовать массив, индексами которого являются страны, а элементами - множества городов каждой страны
Образовать массив, индексами которого являются страны, а элементами - множества...

PL SQL функция для определения страны по коду страны
Как написать pl sql функцию для определения кода страны? Например есть номер 7...

Составить программу, которая бы выдавала по названию страны название столицы этой страны (использовать не менее 6-7 названий).
Составить программу, которая бы выдавала по названию страны название столицы...

Определить, через сколько лет население первой страны превзойдет население второй страны
Задача такая: Население 2-х стран равно N1 и N2, соответственно прирост P1 и...

10
smw1975
54 / 54 / 4
Регистрация: 15.12.2010
Сообщений: 258
14.01.2011, 14:14 2
эээ, в смысле не получается???
не знаете как найти эту строку или сервак по другому отдает?
Если первое - пользовать Pos и PosX (или регулярки)
если второе - так код смотреть надо, хотя и в первом случае не помешает
1
xhugo
1 / 1 / 2
Регистрация: 26.09.2010
Сообщений: 73
14.01.2011, 14:48  [ТС] 3
в смысле я пробовал Pos и PosX у меня не получилось.
Хотел посмотреть как у вас получится это сделать
0
smw1975
54 / 54 / 4
Регистрация: 15.12.2010
Сообщений: 258
14.01.2011, 15:00 4
Delphi
1
2
3
startPos := Pos('<td align="right"><span class="arial">Country code:</span></td>', str);
endPos := PosEx('</td>', str, startPos + 63);
Countru := Trim(MidStr(str, startPos, endPos - startPos - 63));
Как то вот так, писал сразу сюда, так что не проверял
1
xhugo
1 / 1 / 2
Регистрация: 26.09.2010
Сообщений: 73
14.01.2011, 15:18  [ТС] 5
Не сработало,
выводит <td align="right"><span class="arial">Country code:</span
Delphi
1
2
3
4
5
6
7
8
9
 var
 startPos,endPos:integer;
 str, Countru:string;
begin
str:=idhttp1.get('http://geoiptool.com/');
  startPos := Pos('<td align="right"><span class="arial">Country code:</span></td>', str);
endPos := PosEx('</td>', str, startPos + 63);
Countru := Trim(MidStr(str, startPos, endPos - startPos - 63));
memo1.lines.add(Countru);
0
smw1975
54 / 54 / 4
Регистрация: 15.12.2010
Сообщений: 258
14.01.2011, 15:37 6
блин, а посмотреть по отладке ?
Я просто чуть ошибся
Delphi
1
2
3
4
5
6
str:=idhttp1.get('http://geoiptool.com/');
  startPos := Pos('<td align="right"><span class="arial">Country code:</span></td>', str);
  startPos := PosEx('<td align="left" class="arial_bold">', str, startPos + 63);
  endPos := PosEx('</td>', str, startPos + 36);
  Countru := Trim(MidStr(str, startPos + 36, endPos - startPos - 36));
  memo1.lines.add(Countru);
1
xhugo
1 / 1 / 2
Регистрация: 26.09.2010
Сообщений: 73
14.01.2011, 15:53  [ТС] 7
ok

только вот почему пусто выводит ()
а если зайти то все норм
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
   var
 startPos,endPos:integer;
 str, Countru:string;
begin
 str:=idhttp1.get('http://geoiptool.com/?IP=95.52.112.168/');
  startPos := Pos('<td align="right"><span class="arial">Country code:</span></td>', str);
  startPos := PosEx('<td align="left" class="arial_bold">', str, startPos + 63);
  endPos := PosEx('</td>', str, startPos + 36);
  Countru := Trim(MidStr(str, startPos + 36, endPos - startPos - 36));
  memo1.lines.add(Countru);
 
end;
0
smw1975
54 / 54 / 4
Регистрация: 15.12.2010
Сообщений: 258
14.01.2011, 15:56 8
Delphi
1
 str:=idhttp1.get('http://geoiptool.com/?IP=95.52.112.168');
1
xhugo
1 / 1 / 2
Регистрация: 26.09.2010
Сообщений: 73
14.01.2011, 16:56  [ТС] 9
ну почему тут то пусто
должно быть норм а ()
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
var
 
      startPos,endPos,i:integer;
 str, Countru:string;
begin
 for i:=0 to mainform.Memo4.Lines.Count-1    do
 begin
        idhttp1.Create(nil);
 
 
 
 str:=idhttp1.get('http://geoiptool.com/?IP='+mainform.Memo8.Lines[i]);
  startPos := Pos('<td align="right"><span class="arial">Country code:</span></td>', str);
  startPos := PosEx('<td align="left" class="arial_bold">', str, startPos + 63);
  endPos := PosEx('</td>', str, startPos + 36);
  Countru := Trim(MidStr(str, startPos + 36, endPos - startPos - 36));
  memo8.lines.add(Countru);
 
end;
0
smw1975
54 / 54 / 4
Регистрация: 15.12.2010
Сообщений: 258
14.01.2011, 17:10 10
пара провакационных вопросов:
1. сами пытались понять почему не получается, если да, то как именно
2. такое страшное слова как "снифер" кога нибуть слышали? В частности HTTPAnalyzer или аналог?
0
WestSide072
37 / 15 / 3
Регистрация: 15.07.2010
Сообщений: 320
18.01.2011, 14:06 11
Delphi
1
2
3
Memo1.Text:=IdHttp1.Get('http://geoiptool.com/?IP=195.0.0.1');
Memo1.Text:=Copy(Memo1.Text,Pos('<td align="right"><span class="arial">Country code:</span></td>',Memo1.Text)+63,Pos('<td align="right"><span class="arial">Region:</span></td>',Memo1.Text)-Pos('<td align="right"><span class="arial">Country code:</span></td>',Memo1.Text)-63);
Edit1.Text:=Copy(Memo1.Text,Pos('<td align="left" class="arial_bold">',Memo1.Text)+36,Pos('</td>',Memo1.Text)-Pos('<td align="left" class="arial_bold">',Memo1.Text)-36);
0
18.01.2011, 14:06
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.01.2011, 14:06

GeoIP
Каким образом можно определить страну по айпи адресу ? может есть уже готовые...

GeoIP и IIS
Хочу перенаправлять пользователей с помощью GeoIP на разные страницы в...

Debian 7 geoip
Здравствуйте! С линуксом я не дружу, но чуть-чуть понимаю. В общем у меня...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru