BuscaCEP
v2.1.5
BuscaCEP是一個用於查詢線上地址的庫,允許按 CEP(郵政地址代碼)或街道(UF、地點和街道)進行搜尋。
BuscaCEP 採用Delphi
語言實現,使用流暢介面的概念來指導庫的使用,旨在提供實用性和效率, BuscaCEP整合了市場上的主要參與者:Correios、ViaCEP、BrasilAPI 等。
對於尋求強大、靈活且高效的解決方案以將線上地址查詢整合到其應用程式中的 Delphi 開發人員來說,該程式庫是理想的選擇。
使用Boss (Delphi 的依賴管理器)可以自動安裝該程式庫。
boss install https://github.com/antoniojmsjr/BuscaCEP
如果您選擇手動安裝,只需將下列資料夾新增至您的專案中,位於「專案」>「選項」>「Delphi 編譯器」>「目標」>「所有設定」>「搜尋路徑」下
.. BuscaCEP Source
提供者 | 你使用APIKey嗎? | 按郵遞區號搜尋? | * 尋找公共場所? |
---|---|---|---|
郵件 | 不 | 是的 | 是的 |
透過CEP | 不 | 是的 | 是的 |
巴西API | 不 | 是的 | 不 |
打開CEP | 是的 | 是的 | 是的 |
虛擬共和國 | 不 | 是的 | 不 |
正確的郵遞區號 | 不 | 是的 | 是的 |
霸王主機 | 是的 | 是的 | 不 |
波斯特蒙 | 不 | 是的 | 不 |
免費CEP | 是的 | 是的 | 是的 |
打開CEP | 是的 | 是的 | 是的 |
環境政策應用程式介面 | 是的 | 是的 | 是的 |
巴西公開賽 | 是的 | 是的 | 是的 |
很棒的API | 不 | 是的 | 不 |
* 使用街道地址查詢,需要三個必填參數: State、City 和 Street 。
為了在傳回查詢時提供該位置的 IBGE 程式碼和 DDD 程式碼,根據 IBGE 位置 API 和 Anatel 提供的資料建立了BuscaCEP .dat檔案。
專案資料夾中提供了範例:
.. 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 "
}
}
}
}
]
}
下載:演示.zip
BuscaCEP
是根據以下協議許可的免費開源軟體