Python requests powolne

0

Hej, piszę sobie prostą aplikację, dzięki której będe mogl sie zalogowac na stronę która mnie interesuje oraz pobrać jakieś informacje. Aplikacja działa, aczkolwiek zauważyłem, że metoda session.post() wykonuje się w przeciągu prawie 2 sekund, metoda session.get() prawie 0.4s. Co może być problemem? Czy mogę jakoś przyspieszyć post'owanie i get'owanie?

0

może serwer z którym rozmawiasz odpowiada wolno, jesteś pewien że serwer odpowiada natychmiast ?
Wykonaj to samo zapytanie curl'em i zobacz czasy odpowiedzi.

0

Szczerze to nie wiem nawet jak sprawdzić czy odpowiada szybko czy wolno. W momencie kiedy przez przeglądarkę się loguje itd wszystko działa szybciej, a przynajmniej tak odczuwam

0

To sprawdź czy działa szybciej. Możesz też puścić curl na te adresy i zobaczyć jak to wyglada z konsoli.

0
Tomek Pycia napisał(a):

To sprawdź czy działa szybciej. Możesz też puścić curl na te adresy i zobaczyć jak to wyglada z konsoli.

A moglbys mi pokazac jak to zrobic? albo podeslac jakis poradnik? gdyz nie zabardzo wiem jak to zrobic

0

Wejdź sobie w Firefoksie czy Chromie na tę stronę, wejdź w narzędzia deweloperskie, zakładkę żądania/sieć, zobacz ile czasu tam zajmuje wczytanie strony.

0

Możesz też użyć tego narzędzia: https://www.postman.com/

0
enedil napisał(a):

Wejdź sobie w Firefoksie czy Chromie na tę stronę, wejdź w narzędzia deweloperskie, zakładkę żądania/sieć, zobacz ile czasu tam zajmuje wczytanie strony.

Nie wiem czy dobrze to zczytałem, ale zczytałem to po prostu wchodząc w "Inspect" a potem w zakładkę "Network", tak wyglądają czasy w tej zakładce:
(https://4programmers.net/uploads/attachment/5e/5e4c2a9661bc4.png).

0

Ponadto mam pytanie. Jaka jest różnica między wysyłaniem danych w parametrze "data" w metodzie session.post(), od wysyłania danych w parametrze "params" w metodzie session.get().

0

W ogóle zastanawiam się czy schemat mojego myślenia jest dobry, może krótko opowiem jaki jest cel i kolejne kroki mojego grzebania na tej stronie.
Wchodzę na stronę, która od razu mnie przekierowuje na stronę logowania. Więc zamiast używać metody get, używam po prostu metody head i zczytuje sobie url do którego nastąpiło przekierowanie. Potem wchodzę getem na tą właściwą stronę i pobieram informacje "lt", którą muszę podpiąć do swoich danych (loginu i hasła), aby potem móc wysłać je w parametrze data metodą post. Metoda post zwraca mi zawartość strony, którą sobie sukcesywnie przetwarzam używając BeautifulSoup, ale to nieważne akurat. Zauważyłem, że czas wysyłania moich danych metodą "post" trwa bardzo długo prawie 2sekundy. Czy robię coś źle? Bo może moje myślenie nie jest za dobre w tym przypadku.

0

Możesz uzyć czegoś takiego: https://github.com/davecheney/httpstat w celu upewnienia się która faza zapytania trwa najdłużej, inaczej ciężko coś wywróżyć

0
slsy napisał(a):

Możesz uzyć czegoś takiego: https://github.com/davecheney/httpstat w celu upewnienia się która faza zapytania trwa najdłużej, inaczej ciężko coś wywróżyć

nooo, server processing w tym przypadku, nie przypuszczam że autor postu ma dziwnym traffem problem z handshakiem tls albo pakiety mu się gubią po sieci XD

0
pan_kran napisał(a):
slsy napisał(a):

Możesz uzyć czegoś takiego: https://github.com/davecheney/httpstat w celu upewnienia się która faza zapytania trwa najdłużej, inaczej ciężko coś wywróżyć

nooo, server processing w tym przypadku, nie przypuszczam że autor postu ma dziwnym traffem problem z handshakiem tls albo pakiety mu się gubią po sieci XD

Problemem mogą być przykładowo brak kompresji i jakieś kosmicznie duże payloady

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