Pobieranie danych z GUS

0

Witam czy orięntuję się ktoś jak pobrać dane firmy z GUS za pomocą nr NIP ?? Czytałem ich instrukcję do tego natomiast przykłady są z innych języków w których nie za bardzo się orięntuję.

http://bip.stat.gov.pl/dzialalnosc-statystyki-publicznej/rejestr-regon/interfejsyapi/jak-skorzystac-informacja-dla-podmiotow-komercyjnych/

0

Dostałeś od nich klucz? Bo jeżeli nie to https://wyszukiwarkaregon.stat.gov.pl/appBIR/index.aspx i sam tworzysz requesty

0

Na razie działam na testowym kluczu który jest w instrukcji.

0

Mi bardziej chodzi jak w mojej aplikacji przez adres NIP jestem w stanie pobrać dane aby automatycznie uzupełniały się dane takie jak: Nazwa,Adres...

0

Mają webservice SOAP'owe. My z nich korzystamy i jest oki

0

Ale robicie wsimport i działacie na generowanych klasach czy bardziej sami tworzycie zapytanie SOAP czy zapytania REST ??

0

Dobra już sobie poradziłem wykonuje zapytanie:

 DefaultHttpClient httpClient = new DefaultHttpClient();
            HttpPost postRequest = new HttpPost("https://wyszukiwarkaregontest.stat.gov.pl/wsBIR/UslugaBIRzewnPubl.svc");
            StringEntity input = new StringEntity("<soap:Envelope xmlns:soap=\"http://www.w3.org/2003/05/soap-envelope\" xmlns:ns=\"http://CIS/BIR/PUBL/2014/07\">"
                    + "<soap:Header xmlns:wsa=\"http://www.w3.org/2005/08/addressing\">"
                    + "<wsa:Action>http://CIS/BIR/PUBL/2014/07/IUslugaBIRzewnPubl/Zaloguj</wsa:Action>"
                    + "<wsa:To>https://wyszukiwarkaregontest.stat.gov.pl/wsBIR/UslugaBIRzewnPubl.svc</wsa:To>"
                    + "</soap:Header>"
                    + "<soap:Body>"
                    + "<ns:Zaloguj>"
                    + "<ns:pKluczUzytkownika>Klucz użytkownika</ns:pKluczUzytkownika>"
                    + "</ns:Zaloguj>"
                    + "</soap:Body>"
                    + "</soap:Envelope>");
            input.setContentType("application/soap+xml");


          postRequest.setEntity(input);
            HttpResponse response = httpClient.execute(postRequest);
0

Można skorzystać z już gotowych rozwiązań: https://nip24.pl/pobierz/
Rozwiązanie bezpłatne jeśli zrobić mniej niż 100 zapytań na miesiąc.

0

Używam metody kolegi:
public HttpResponse serviceConnection() {
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost postRequest = new HttpPost("https://wyszukiwarkaregontest.stat.gov.pl/wsBIR/UslugaBIRzewnPubl.svc");
StringEntity input = null;
HttpResponse response = null;
try {
input = new StringEntity("<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" "
+ "xmlns:ns="http://CIS/BIR/PUBL/2014/07">"
+ "<soap:Header xmlns:wsa="http://www.w3.org/2005/08/addressing">"
+ "wsa:Actionhttp://CIS/BIR/PUBL/2014/07/IUslugaBIRzewnPubl/Zaloguj</wsa:Action>"
+ "wsa:Tohttps://wyszukiwarkaregontest.stat.gov.pl/wsBIR/UslugaBIRzewnPubl.svc</wsa:To>"
+ "</soap:Header>"
+ "soap:Body"
+ "ns:Zaloguj"
+ "ns:pKluczUzytkownika"
+ Play.application().configuration().getString("gus.apiKey")
+ "</ns:pKluczUzytkownika>"
+ "</ns:Zaloguj>"
+ "</soap:Body>"
+ "</soap:Envelope>");
input.setContentType("application/soap+xml");

        postRequest.setEntity(input);

        response = httpClient.execute(postRequest);
    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
    return response;
}

I okazuje się, że metoda getFullReport nie zwraca żadnych danych.

public HttpResponse getFullReport(String vatNumber){
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost postRequest = new HttpPost("https://wyszukiwarkaregontest.stat.gov.pl/wsBIR/UslugaBIRzewnPubl.svc");
StringEntity input = null;
HttpResponse response = null;
try {
input = new StringEntity(
"<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:ns="http://CIS/BIR/PUBL/2014/07"> " +
"<soap:Header xmlns:wsa="http://www.w3.org/2005/08/addressing"> " +
"wsa:Tohttps://wyszukiwarkaregontest.stat.gov.pl/wsBIR/UslugaBIRzewnPubl.svc</wsa:To> " +
"wsa:Actionhttp://CIS/BIR/PUBL/2014/07/IUslugaBIRzewnPubl/DanePobierzPelnyRaport</wsa:Action> " +
"</soap:Header> " +
"soap:Body " +
"ns:DanePobierzPelnyRaport " +
"ns:pRegon000331501</ns:pRegon> " +
"ns:pNazwaRaportuPublDaneRaportPrawna</ns:pNazwaRaportu> " +
"</ns:DanePobierzPelnyRaport> " +
"</soap:Body> " +
"</soap:Envelope>"
);
input.setContentType("application/soap+xml");

        postRequest.setEntity(input);

        response = httpClient.execute(postRequest);
    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
    return response;
}

Czy potrzebuję jakiejś sesji użytkownika? Jeśli tak, to jak ona się nazywa?

0

Ale po co się biedzisz z Soapem. Zrób sobie wsimport i próbuj, ale zgodnie z dokumentacją. Bo jak pytasz o sesję, to tak jakbyś nie czytał instrukcji.

1 użytkowników online, w tym zalogowanych: 0, gości: 1