BuscaCEP هي مكتبة لاستشارة العناوين عبر الإنترنت، مما يسمح بالبحث عن طريق CEP (رمز العنوان البريدي) أو عن طريق الشارع (UF، المنطقة المحلية والشارع).
تم تنفيذه بلغة Delphi
، ويستخدم مفهوم الواجهة بطلاقة لتوجيه استخدام المكتبة، وتم تطويره لتوفير التطبيق العملي والكفاءة، ويدمج BuscaCEP اللاعبين الرئيسيين في السوق: Correios، ViaCEP، BrasilAPI، من بين آخرين.
تعتبر هذه المكتبة مثالية لمطوري دلفي الذين يبحثون عن حل قوي ومرن وفعال لدمج استعلامات العناوين عبر الإنترنت في تطبيقاتهم.
باستخدام Boss (مدير التبعية لدلفي) من الممكن تثبيت المكتبة بطريقة آلية.
boss install https://github.com/antoniojmsjr/BuscaCEP
إذا اخترت التثبيت يدويًا، فما عليك سوى إضافة المجلدات التالية إلى مشروعك، ضمن Project > Options > Delphi Compiler > Target > All Configurations > Search path
.. BuscaCEP Source
مزود | هل تستخدم APIKey؟ | البحث عن طريق الرمز البريدي؟ | * البحث عن مكان عام؟ |
---|---|---|---|
بريد | لا | نعم | نعم |
عبر CEP | لا | نعم | نعم |
البرازيل API | لا | نعم | لا |
افتح CEP | نعم | نعم | نعم |
الجمهورية الافتراضية | لا | نعم | لا |
الرمز البريدي الصحيح | لا | نعم | نعم |
KingHost | نعم | نعم | لا |
بوستمون | لا | نعم | لا |
CEP مجاني | نعم | نعم | نعم |
افتح CEP | نعم | نعم | نعم |
واجهة برمجة تطبيقات CEP | نعم | نعم | نعم |
البرازيل المفتوحة | نعم | نعم | نعم |
AwesomeAPI | لا | نعم | لا |
* للاستعلام باستخدام عنوان الشارع، هناك ثلاث معلمات إلزامية مطلوبة: الولاية والمدينة والشارع .
لتوفير رمز IBGE ورمز DDD للموقع عند إعادة الاستعلام، تم إنشاء ملف BuscaCEP .dat ، استنادًا إلى واجهة برمجة تطبيقات موقع IBGE والبيانات المقدمة من Anatel.
الأمثلة متوفرة في مجلد المشروع:
.. BuscaCEP Samples
الاستعلام عن طريق الرمز البريدي
uses
BuscaCEP , BuscaCEP .Types, BuscaCEP .Interfaces, System.SysUtils;
var
l BuscaCEP Response: I BuscaCEP Response;
lMsgError: string;
begin
try
l BuscaCEP Response := T BuscaCEP .New
// .SetArquivoCache() [OPCIONAL]
.Providers[T BuscaCEP ProvidersKind.Correios]
// .SetAPIKey() [CONFORME O PROVEDOR]
.Filtro
.SetCEP( ' 90520-003 ' )
.Request
// .SetTimeout() [OPCIONAL]
.Execute;
except
on E: E BuscaCEP Request do
begin
lMsgError := Concat(lMsgError, Format( ' Provider: %s ' , [E.Provider]), sLineBreak);
lMsgError := Concat(lMsgError, Format( ' DateTime: %s ' , [DateTimeTostr(E.DateTime)]), sLineBreak);
lMsgError := Concat(lMsgError, Format( ' Kind: %s ' , [E.Kind.AsString]), sLineBreak);
lMsgError := Concat(lMsgError, Format( ' URL: %s ' , [E.URL]), sLineBreak);
lMsgError := Concat(lMsgError, Format( ' Method: %s ' , [E.Method]), sLineBreak);
lMsgError := Concat(lMsgError, Format( ' Status Code: %d ' , [E.StatusCode]), sLineBreak);
lMsgError := Concat(lMsgError, Format( ' Status Text: %s ' , [E.StatusText]), sLineBreak);
lMsgError := Concat(lMsgError, Format( ' Message: %s ' , [E.Message]));
Application.MessageBox(PWideChar(lMsgError), ' A T E N Ç Ã O ' , MB_OK + MB_ICONERROR);
Exit;
end ;
on E: Exception do
begin
Application.MessageBox(PWideChar(E.Message), ' A T E N Ç Ã O ' , MB_OK + MB_ICONERROR);
Exit;
end ;
end ;
end ;
التشاور عن طريق الشارع
uses
BuscaCEP , BuscaCEP .Types, BuscaCEP .Interfaces, System.SysUtils;
var
l BuscaCEP Response: I BuscaCEP Response;
lMsgError: string;
begin
try
l BuscaCEP Response := T BuscaCEP .New
// .SetArquivoCache() [OPCIONAL]
.Providers[T BuscaCEP ProvidersKind.Correios]
// .SetAPIKey() [CONFORME O PROVEDOR]
.Filtro
.SetLogradouro( ' Avenida Plínio Brasil Milano ' )
.SetLocalidade( ' Porto Alegre ' )
.SetUF( ' RS ' )
.& End
.Request
// .SetTimeout() [OPCIONAL]
.Execute;
except
on E: E BuscaCEP Request do
begin
lMsgError := Concat(lMsgError, Format( ' Provider: %s ' , [E.Provider]), sLineBreak);
lMsgError := Concat(lMsgError, Format( ' DateTime: %s ' , [DateTimeTostr(E.DateTime)]), sLineBreak);
lMsgError := Concat(lMsgError, Format( ' Kind: %s ' , [E.Kind.AsString]), sLineBreak);
lMsgError := Concat(lMsgError, Format( ' URL: %s ' , [E.URL]), sLineBreak);
lMsgError := Concat(lMsgError, Format( ' Method: %s ' , [E.Method]), sLineBreak);
lMsgError := Concat(lMsgError, Format( ' Status Code: %d ' , [E.StatusCode]), sLineBreak);
lMsgError := Concat(lMsgError, Format( ' Status Text: %s ' , [E.StatusText]), sLineBreak);
lMsgError := Concat(lMsgError, Format( ' Message: %s ' , [E.Message]));
Application.MessageBox(PWideChar(lMsgError), ' A T E N Ç Ã O ' , MB_OK + MB_ICONERROR);
Exit;
end ;
on E: Exception do
begin
Application.MessageBox(PWideChar(E.Message), ' A T E N Ç Ã O ' , MB_OK + MB_ICONERROR);
Exit;
end ;
end ;
end ;
نتيجة الاستعلام [استجابة I BuscaCEP ]
uses
BuscaCEP .Types, BuscaCEP .Interfaces;
var
l BuscaCEP Response: I BuscaCEP Response;
l BuscaCEP Logradouro: T BuscaCEP Logradouro;
begin
for l BuscaCEP Logradouro in l BuscaCEP Response.Logradouros do
begin
l BuscaCEP Logradouro.Logradouro;
l BuscaCEP Logradouro.Complemento;
l BuscaCEP Logradouro.Unidade;
l BuscaCEP Logradouro.Bairro;
l BuscaCEP Logradouro.Localidade.Nome;
l BuscaCEP Logradouro.Localidade.IBGE;
l BuscaCEP Logradouro.Localidade.DDD;
l BuscaCEP Logradouro.Localidade.Estado.Nome;
l BuscaCEP Logradouro.Localidade.Estado.IBGE;
l BuscaCEP Logradouro.Localidade.Estado.Sigla;
l BuscaCEP Logradouro.Localidade.Estado.Regiao.Nome;
l BuscaCEP Logradouro.Localidade.Estado.Regiao.IBGE;
l BuscaCEP Logradouro.Localidade.Estado.Regiao.Sigla;
l BuscaCEP Logradouro.CEP;
end ;
نتيجة الاستعلام [JSON]
{
"provider" : " #CORREIOS " ,
"date_time" : " 2024-05-01T02:35:14.772-03:00 " ,
"request_time" : " 75ms " ,
"total" : 1 ,
"logradouros" : [
{
"logradouro" : " Avenida Plínio Brasil Milano " ,
"complemento" : " de 1947 ao fim - lado ímpar " ,
"unidade" : " " ,
"bairro" : " Passo da Areia " ,
"cep" : " 90520003 " ,
"localidade" : {
"ibge" : 4314902 ,
"ddd" : 51 ,
"nome" : " Porto Alegre " ,
"estado" : {
"ibge" : 43 ,
"nome" : " Rio Grande do Sul " ,
"sigla" : " RS " ,
"regiao" : {
"ibge" : 4 ,
"nome" : " Sul " ,
"sigla" : " S "
}
}
}
}
]
}
التحميل: Demos.zip
BuscaCEP
هو برنامج مجاني ومفتوح المصدر مرخص بموجب قانون