Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Skrypt / funkcja do pobierania danych na podstawie NIP, z bazy CEIDG
tikky
post 21.01.2015, 20:41:43
Post #1





Grupa: Zarejestrowani
Postów: 112
Pomógł: 1
Dołączył: 2.10.2007

Ostrzeżenie: (0%)
-----


Witajcie,

Buduję aplikację gdzie jednym z modułów jest dodawanie firm.
Najpierw robiłem to ręcznie, a następnie dorobiłem skrypt który pobiera adres, miast, kod pocztowy z europejskiej bazy VIES.
Problem w tym, że w tej bazie są tylko polskie firmy, które zarejestrowały się jako importerzy/eksporterzy i mają nipl z przedrostkiem PL.
Jest natomiast baza CEIDG i szukam skryptu / klasy / rozwiązania, które po podaniu NIP pobrało by dane z CEIDG i zwróciło np. w postaci tablicy.

Zdaję sobie sprawę, że wyciągnięcie danych może się wiązać z koniecznością przepisania captcha, ale z tym mogę się pogodzić.

Przeszukałem zasobu forum, znalazłem jakiś stary temat z niedziałającymi linkami.
Czy ktoś z Was może posiada/zna takie rozwiązanie?
Będę wdzięczny za pomoc.


--------------------
Go to the top of the page
+Quote Post
vokiel
post 21.01.2015, 21:06:58
Post #2





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

Ostrzeżenie: (0%)
-----


Udostępnianie danych z CEIDG, są tam zasady i WSDL


--------------------
Go to the top of the page
+Quote Post
markuz
post 21.01.2015, 21:17:00
Post #3





Grupa: Zarejestrowani
Postów: 1 240
Pomógł: 278
Dołączył: 11.03.2008

Ostrzeżenie: (0%)
-----


Kod
http://api.mojepanstwo.pl/krs/podmioty?conditions[nip]={NIP}


Ten post edytował markuz 21.01.2015, 21:17:29


--------------------
Go to the top of the page
+Quote Post
tikky
post 22.01.2015, 09:13:00
Post #4





Grupa: Zarejestrowani
Postów: 112
Pomógł: 1
Dołączył: 2.10.2007

Ostrzeżenie: (0%)
-----


@markuz:

Ciekawe rozwiązania ale nie do końca się sprawdza.
Z tego co widzę, to ona wyszukuje po NIPie ale tylko w bazie firm, które mają wpis do KRSu, czyli głównie spółki.
I np. sprawdzam po NIP firmę MAKRO:
http://api.mojepanstwo.pl/krs/podmioty?con...p%5D=5220002860
..i jest ok. Ale jak wezmę NIP jakiejś mniejszej firmy, lub np. urzędu która nie jest spółką to już nie znajdzie.

Poniżej odpytanie o dane Uniwersytetu Jagiellońskiego:
http://api.mojepanstwo.pl/krs/podmioty?con...p%5D=9441677021
..i to już nie zwraca danych.

Czy jest więc podobne rozwiązanie, które w równie prosty sposób mogłoby odpytać bazę CEIDG?


--------------------
Go to the top of the page
+Quote Post
markuz
post 22.01.2015, 10:14:21
Post #5





Grupa: Zarejestrowani
Postów: 1 240
Pomógł: 278
Dołączył: 11.03.2008

Ostrzeżenie: (0%)
-----


@tikky
Uniwersytet Jagieloński też istnieje w bazie : http://mojepanstwo.pl/dane/instytucje/208,...lonski-krakowie i na pewno go możesz jakoś znaleźć w API.

Cytat
Czy jest więc podobne rozwiązanie, które w równie prosty sposób mogłoby odpytać bazę CEIDG?

Nie ma. Aczkolwiek za jakiś czas z tego co mi wiadomo baza CEIDG będzie dostępna na mojepanstwo.pl i udostępniona przez API.


--------------------
Go to the top of the page
+Quote Post
tikky
post 24.01.2015, 11:16:48
Post #6





Grupa: Zarejestrowani
Postów: 112
Pomógł: 1
Dołączył: 2.10.2007

Ostrzeżenie: (0%)
-----


@Markuz

Dzięki za informacje, pobieranie danych z KRS częściwo rozwiązuje mój problem, choć tak jak wspomniałem są tam tylko firmy, które mają osobowość prawną (wpis do KRS).

Mam jeszcze jedno pytanie. Mam już działający kod:

  1. $nip = '5220002860';
  2. $json = file_get_contents('http://api.mojepanstwo.pl/krs/podmioty?conditions%5Bnip%5D='.$nip);
  3. $body = json_decode($json);
  4. $nazwa = 'krs_podmioty.nazwa_skrocona';
  5. echo 'Nazwa firmy o NIPie: '. $nip .' to: ' . $body->search->dataobjects[0]->data->$nazwa;

..ale wywala mi błąd jak nie ma NIPu w bazie i nie wiem jak zrobić warunek i sprawdzić czy jest poprawna odpowiedź.
Nie wiem czy dobrze to robię, może jest jakiś gotowy kod do tego celu?


--------------------
Go to the top of the page
+Quote Post
markuz
post 24.01.2015, 11:35:07
Post #7





Grupa: Zarejestrowani
Postów: 1 240
Pomógł: 278
Dołączył: 11.03.2008

Ostrzeżenie: (0%)
-----


  1. $data = json_decode($response);
  2. $count = (int) $data->search->pagination->count;
  3. if($count > 0)
  4. echo 'znaleziono';
  5. else
  6. echo 'nie znaleziono';


Ten post edytował markuz 24.01.2015, 20:29:40


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 1.05.2025 - 06:12