Pobieranie danych ze strony www

0

Witam, chciałbym się nieco dowiedzieć o możliwościach Pythona. Chcę napisać prosty skrypt Pythona, ale nie wiem bardzo jak się za niego zabrać, a mianowicie, chciałbym żeby mój program łączył się ze stroną : https://hazard.mf.gov.pl/ oraz pobierał bezpośrednio i zapisywał do pliku docx lub txt listę domen, która jest tam aktualizowana. Ktoś może coś podrzucić ?

2

Jak w firefoxie badasz element to pokazują Ci się narzędzia developerskie. W zakładce sieć masz pokazane, skąd pochodzą dane, ładowane przy kliknięciach w poszczególne numerki.

Niestety z nieznanych mi przyczyn, nie można normalnie wejść w przeglądarce np. na adres https://hazard.mf.gov.pl/BlockedRegisterPositions?pageIndex=5&pageSize=15 żeby pokazała się odpowiedź serwera.

Jednak, jak skopiowałem polecenie curl (prawy przcisk myszy na elemencie w zakładcie Sieć) i je uruchomiłem, to udało się poprawnie wyciągnąć, to co potrzebujemy:

curl 'https://hazard.mf.gov.pl/BlockedRegisterPositions?pageIndex=4&pageSize=15' -H 'Host: hazard.mf.gov.pl' -H 'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:54.0) Gecko/20100101 Firefox/54.0' -H 'Accept: */*' -H 'Accept-Language: pl,en-US;q=0.7,en;q=0.3' --compressed -H 'Referer: https://hazard.mf.gov.pl/' -H 'X-Requested-With: XMLHttpRequest' -H 'Cookie: ARRAffinity=ef5f223690ea87515f19e40e8ac1a4b9add7203600ad5fe32083a95a5f3647ff' -H 'Connection: keep-alive'

W Pythonie można używać curla ( http://pycurl.io/ ), więc jak tylko pobierzesz dane (JSON), to możesz z nich wyciągnąć to co potrzebujesz.

Podejrzewam, że możesz w page size wpisać większe wartości, żeby dostać więcej danych na stronę.

Jak chcesz pobrać wszystkie strony ze spisu, to musisz , w pętli przejść przez wszystkie możliwe pageIndex, za każdym razem parsując zwracane jsony.

0

Super, dzięki wielkie za szybką i bardzo jasną odpowiedź!

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