Scrapowanie obrazka i tytułu z dynamicznej strony

0

Cześć!

Mam pytanie...
Czy używając biblioteki request można w jakiś sposób pobrać aktualne zdjęcie oraz opis ze strony która dynamicznie się zmienia?
Mój problem polega na tym, że przy każdym odświeżeniu strony obraz oraz opis jest pobierany przez GET i w momencie gdy wchodzę na stronę to w:
(request.text)
posiadam przykładowo: "Wypadek Audi w Warszawie" i pod spodem zdjęcie rozbitego Audi . Gdy w zapytaniu chce pobrać to konkretne zdjęcie czy też sam opis poprzez:

session = HTMLSession()
r = session.get('https://www.strona.pl/zpolski')
r.html.render(sleep=2,timeout=20)
links = r.html.find("#zdjecie")
result = str(links)
results = result.split("src=")[1].split("'")[1]
resultss = "https://www.strona.pl/"+results
with open ('zdjecie.png', 'wb') as f:
    f.write(requests.get(resultss, headers=headers).content)

To zamiast zdjęcia tego audi, pobiera mi się zupełnie inne zdjęcie oraz opis niż to które aktualnie się wyświetla na stronie (request.text) (np. Bieg na 10 km :D).
Rozumiem dlaczego tak, gdyż każde wejście w link (zapytanie) zmienia opis oraz zdjęcie, ale ja chciałbym pobrać akurat to które jest otwarte, bo tak zawsze jestem o jeden news w plecy ponieważ pierwsze wejście na stronę pokazuje najnowszy news z polski a dalsze generowane są randomowo z ostatnich 24 godzin. A moim pierwszym zapytaniem jest wejście na stronę, potem szukam aktualnego linku do zdjęcia i do niego przechodzę i pobieram zdjęcie. Niestety nie jest już to "pierwsze" zdjęcie.

Wcześniej używałem selenium a zdjęcie robiłem poprzez screenshot, ale chciałbym przejśc na czysty request lub jakieś inne biblioteki które nie będą mi spowalniać skryptu.

Pozdrawiam!

1

Witamy w świecie scraperów:) Obczaj w necie scrapowanie z javascriptem, dynamiczne strony, etc...

0

No powiem Ci kolego @lion137, że przepisałem ponad 1500 linii skryptu z selenium na requests bo chciałem się pozbyć przeglądarek w trybie headless, a teoretycznie na czymś co w selenium było banalne to tu wywaliłem się na plecy :) Kompletnie nie wiem jak podejść do tego tematu, próbowałem różnych sposobów ale nie wiem czy w ogóle jest taka możliwość poprzez requesty, bo zawsze przy drugim zapytaniu będzie mi się wyświetlać coś innego, a w jednym zapytaniu tego nie zrobię nie znając pierw #zdjęcie src= :D

Ps. Dziekuje @Riddle za poprawę nazwy tematu, miłego wieczoru :)

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