Autor Beitrag
Seven of Nine
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 132
Erhaltene Danke: 1

Win XP, Win Vista HomePro
Delphi 2009
BeitragVerfasst: Fr 30.11.12 11:47 
Ich möchte aus einer Liste von Proxy-Servern diejenigen herausfinden, "welche aus einem gewissen land (zB US) sind"

Es gibt einige URLs bei denen man per HTTP.Get Anfrage eine IP übergeben kann und die dann die gesuchten Infos retournieren.
Alle die ich bisher kenne, verweigern aber nach einer gewissen Anzahl von Suchanfragen (zB 10 Suchen) den Dienst

Gibt es Services die das kostenlos für eine nicht begrenzte Anzahl an Proxy-IPs erledigen?
Wichtig ist mir dabei eigentlich nur das Ursprungsland.

lG Martin
Xion
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
EE-Maler
Beiträge: 1952
Erhaltene Danke: 128

Windows XP
Delphi (2005, SmartInspect), SQL, Lua, Java (Eclipse), C++ (Visual Studio 2010, Qt Creator), Python (Blender), Prolog (SWIProlog), Haskell (ghci)
BeitragVerfasst: Fr 30.11.12 18:48 
guck dir das mal an:

dev.maxmind.com/geoip/geolite

Dort gibt es csv-ähnliche Dateien welche diese Infos enthalten.

_________________
a broken heart is like a broken window - it'll never heal
In einem gut regierten Land ist Armut eine Schande, in einem schlecht regierten Reichtum. (Konfuzius)

Für diesen Beitrag haben gedankt: Seven of Nine
Seven of Nine Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 132
Erhaltene Danke: 1

Win XP, Win Vista HomePro
Delphi 2009
BeitragVerfasst: Mi 05.12.12 04:19 
Danke Xion!
falls jemand das mal benötigt hier die Infos wie man sowas in ein eigenes programm einbaut

1.) Download der "GeoLite Country" database von geolite.maxmind.com/...Country/GeoIP.dat.gz
Die *.dat Datei extrahieren und in ein Verzeichnis speichern auf das die eigene Applikation zugreifen kann
(zB das HomeDir der eigenen Applikation, dort könnten auch Problemlos versions-Updates der GeoIP.dat eingespielt werden ohne Windows UAC)

2.) Vorbereitungen der eigenen Applikation auf
2a)
uses GeoIP;

2b)
Var
GeoIP: TGeoIP;
GeoIPCountry: TGeoIPCountry;

2e)
Function TForm1.GetIPCountryStr(IP:String):String;

2c,d)
"FormCreate" Ereignis -> GeoIP := TGeoIP.Create({MyHomeDir + }'GeoIP.dat'); //Location der Datei. Zur Sicherheit würde ich noch ein If FileExists dazupacken!
"OnDestroy" Ereignis -> GeoIP.Free;

3.) Routine zum abfrage des Landes einer gewissen IP


ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
Function TForm1.GetIPCountryStr(IP:String):String;
begin
  try
    if GeoIP.GetCountry(IP, GeoIPCountry) = GEOIP_SUCCESS
      then Result := GeoIPCountry.CountryName
      else Result := 'ERROR';
  except
      Result := 'We got an exeption!';
  end;
end;




4.) Leicht modifizierter Delphi-Wrapper für die GeoIP.dat siehe Dateianhang (Anpassung Unicode Strings)


Viel Spaß
Martin
Einloggen, um Attachments anzusehen!
Serbsis
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Di 11.12.12 10:50 
Hey cool, danke. Ich benötige es zwar grad nicht unbedingt, habs mir aber zur Sicherheit mal rauskopiert, falls es dann doch irgendwann mal benötigt wird :)