Wpis z mikrobloga

Hejka mirki mam pytanko #programowanie

Mam bota co zbiera sobie pewne informacje z różnych stron i w tym celu raz dziennie wysyła zapytanie i dzisiaj jedna strona zamiast zwrócić mi interesujące mnie dane daje mi #captcha. Pytanko jak to ominąć, ponieważ wchodząc na stronę z poziomu przeglądarki wszystko działa, więc jakaś blokada na ip odpada a zapytanie do strony wysłam ze swoim user-agent (taki sam jak tej przeglądarki co na niej działa). Co muszę ustawić w wysyłanym zapytaniu aby wyświetlała mi się strona jak dla zwykłego użytkownika? Używam biblioteki #requests w #python, troche #webdev
  • 5
  • Odpowiedz
@h00k: Udawanie przeglądarki to ciężka sprawa, jeśli strona się aktywnie przed tym zabezpiecza. Lepiej odpalić jakieś narzędzie wewnątrz prawdziwej przeglądarki do symulowania tego co robił użytkownik, i wyciągać tak dane. Wieki temu coś dokładnie takiego robiłem skryptami greasemonkey i selenium, ale teraz pewnie są milion razy lepsze narzędzia.
  • Odpowiedz
@h00k: Jest dużo zabezpieczeń antybotowych, Jeśli strona jest za Cloudflare to mogłeś wpaść w filtr antyspamowy/antybotowy (np. za częste requesty po sobie, dziwny user agent, rozdziałka itd).

Możesz spróbowac za pomocą np. Puppeteer (headless Chrome) ale i tak jak wpadniesz na listę to nie przeskoczysz łatwo nawet zmieniając IP.

Kiedyś dużo stron udostepniało treści jako RSS/aAtom i można było łatwo sprawdzać aktualizację. Możesz wpisać adres np. w Feedly i sprawdzić co
  • Odpowiedz