Wpis z mikrobloga

Staram się poduczyć trochę o programowaniu, no a zawsze się mówi, że najlepiej gdy ma się jakiś projekt. Wymyśliłem sobie, że zliczę sobie łączny czas jaki poświęciłem, na obejrzenie filmów i seriali jakie mam zapisane w bazie Filmwebu. Jako że nie wyciągnę tych informacji z ich danych (nawet nie o to by mi chodziło w tym projekcie), chciałbym zrozumieć jak mogę zautomatyzować proces ściągania tych danych, po prostu korzystając z tych informacji które się wyświetlają na stronie. Nazywa się to chyba metodą webscrappingu?
W każdym razie, nawet nie chodziłoby mi o to, aby czytać każdą informację ze źródła każdej strony (może na pierwszy sposób) - tylko może jakoś zrobić program, który kazałby komputerowi patrzeć w określone miejsce na stronie, rozpoznał co tam pisze, przekonwertował dane do excela.

Chciałbym to zrobić na dwa sposoby, ten drugi, wizualny w ogóle nie wiem jak zacząć. Jak mógłbym to zrobić?

Jeśli chodzi o pierwszy sposób, zapytałem chatagpt, no i do VCS, kazał mi wkleić coś takiego. Zainstalowałem bibliotekę soup w cmd pipem.
Uruchomiony skrypt (z wpisaną poprawną nazwą profilu filmweb), nie generuje nic do zapisanego pliku .csv - więc pewnie chodzi o to że identyfikatory ze strony nie są dobrze ściągnięte. Jak klikając na nazwę filmu na filmwebie, mogę po "zbadaj element" zobaczyć które parametry należy wpisać do skryptu aby dane się zaciągnęły?

#pytanie #programowanie #python #filmweb #webscraping #webdev
interpenetrate - Staram się poduczyć trochę o programowaniu, no a zawsze się mówi, że...

źródło: obraz_2024-10-18_224638301

Pobierz
  • 25
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

cmd(ctrl)+shift+c i zaznaczasz interesujący cię element na stronie - jak najdokładniej. z prawej strony będziesz miał odpowiednik tego elementu w kodzie
  • Odpowiedz
@patryk_ekiert: nie czytalem calego wywodu autora.
jak chcialby ze strony usera to kombinowalbym na dwa sposoby:
1) albo na sztywno po takim elemencie <section type="noPadding" class="sc-eoVZPG sc-bSoiow ckudOY LXlSr"> o ile te nazwy klas nie są definiowane dynamicznie
2) albo po elemencie <div id="app" class="page_content fa_wrapper"> i z tego aby zrobił ekstrakt tekstów/elementów i wśród nich wyszukal nazwy filmow (tu juz dodac wlasna logike na filtrowanie)

Aha i
  • Odpowiedz
@interpenetrate: Idea odpowienia, ale wybór kiepski. Scrappowanie stron sprawi, że pewnie większość problemów będziesz rozwiązywał właśnie w tym zakresie. I często nie będziesz pewien czy problem jest z Twoim kodem czy może jednak z tym jak strona się 'wczytała'. Plus się będziesz męczyć z selectorami. I znów będziesz się zastanawiał czy Twój kod jest zły, czy może selector źle napisany.

Trust me. Znajdź sobie coś innego.
Mogę Ci nawet spróbować
  • Odpowiedz
Mogę Ci nawet spróbować coś dobrać odpowiedniego, bylebyś nie wisiał utykając trochę niepotrzebnie.


@venomik: bardzo chętnie, miałbyś coś na myśli?

A słuchaj, no tak jak piszę w pierwszym poście - tytuł i długość są tekstowo na stronach. W zasadzie wystarczy żeby skrypt otwierał sobie każdą stronę i patrzył w to samo miejsce i sobie spisywał. Czy coś takiego byłoby łatwiej zrobić?
  • Odpowiedz
ja najpierw kliknąłem na plakat, zbadaj element. widzę że to element typu img, jako alt tekst jest tytuł


@patryk_ekiert: jak to znajdujesz? Jak to robię, to pokazuje mi link do obrazka .webp i tyle. Wyżej nad tym mam tylko link do strony filmu i tyle

edit. a, dobra
class="sc-fjvvzt jDaEvH">Deadpool
  • Odpowiedz
jak to znajdujesz?


@interpenetrate: o tak znalazłem

Jak to robię, to pokazuje mi link do obrazka .webp i tyle. Wyżej nad tym mam tylko link do strony filmu i tyle


brzmi jakbyś patrzał na odpowiedni element. właśnie o tym mówię. ma on "alt" gdzie jest tytuł
patryk_ekiert - > jak to znajdujesz? 

@interpenetrate: o tak znalazłem
 Jak to robię...
  • Odpowiedz
@interpenetrate: Pewnie. Tak jak wczesniej pisałem. Niestety mój ostatni sarkastyczny komentarz nie mógł być bardziej rozbudowany - dziś akurat pare godzin spędziłem w aucie jadąc po psa mojej siostry.
Nevermind.

Jak bardzo lubisz filmy to weź sobie jakiś JSON z informacjami o filmach. Możesz na przykład któryś z tych:
https://github.com/prust/wikipedia-movie-data
Sugeruję coś z ostatnich dekad, jest
  • Odpowiedz
O tym mówiłem. Zamiast faktycznie uczyć się programować to się męczysz z znajdywaniem odpowiedniego selectora elementu na stronie ;)


@venomik: Myślisz że nie umiałbym już od 10 lat programowania, gdyby nie było najeżone tyloma problemami z d--y chociażby skonfigurowanie serwera czy pythona pod windowsem dla laika? Lepsze znajdowanie tego selektora, niż to co wcześniej z tym gównem dla autystów przeszedłem, bo tylko oni chyba lubią się w tym grzebać. Naprawdę,
  • Odpowiedz
@interpenetrate: Na jakim Ty właściwie poziomie pythona jesteś?
Jakbyś miał dicta i miał wyświetlić wszystkie wartości dla kluczy, które składają się z pojedynczej litery i cyfry parzystej to napisałbys ten kod od ręki?
  • Odpowiedz