Aktywne Wpisy

Czy tylko ja mam wrażenie, że w 2026 roku bycie konsumentem w Polsce to sport ekstremalny dla ludzi o stalowych nerwach?
Idziesz do sklepu po masło - kiedyś 250g, potem 200g, teraz coraz częściej straszy 170g w tej samej cenie. Kupujesz chipsy - w środku więcej azotu niż ziemniaków. Zamawiasz burgera w knajpie, płacisz 50 zł, a dostajesz coś, co rozmiarem przypomina zestaw dla dzieci. Do tego dochodzą „noworoczne aktualizacje” cen prądu
Idziesz do sklepu po masło - kiedyś 250g, potem 200g, teraz coraz częściej straszy 170g w tej samej cenie. Kupujesz chipsy - w środku więcej azotu niż ziemniaków. Zamawiasz burgera w knajpie, płacisz 50 zł, a dostajesz coś, co rozmiarem przypomina zestaw dla dzieci. Do tego dochodzą „noworoczne aktualizacje” cen prądu
W czym najbardziej odczuwasz „strzyżenie” klienta na początku 2026 roku?
- Spożywka - mniejsza gramatura, wyższa cena 27.6% (335)
- Spożywka - gorszy skład (tanie zamienniki) 4.4% (53)
- Media i opłaty (nowe taryfy za prąd, gaz, śmieci) 16.7% (203)
- Gastronomia (mikro porcje w makro cenach) 22.0% (267)
- Subskrypcje i apki (podwyżki za netflixa, itp) 3.9% (47)
- Usługi i fachowcy (fryzjer, mechanik, remonty) 13.3% (161)
- Nieruchomości (czynsze i mityczne „opłaty") 6.9% (84)
- Elektronika (gorsza jakość, psucie po gwarancji) 2.1% (25)
- Paliwo i transport (bilety, benzyna, parkingi) 1.8% (22)
- Inne - wyjaśnię w komentarzu 1.5% (18)
piotr-szczerek +29




Chcę napisać aplikację, która: będzie pobierać stronę internetową (z obrazkami, CSS itd), zapisywać ją do bazy, odczytywać, wyświetlać stronę w przeglądarce.
Oczywiście prosto w Javie nie mogę tego zrobić (za pomocą HttpURLConnection, setRequestMethod("GET"), InputStreamReader) bo mam sam kod HTML (bez obrazków itd). Musiałbym ręcznie ściągać wszystkie linki, potem podmieniać w kodzie linki do nich itd.
Podobno można skorzystać z webcrawlera (ma ktoś inny pomysł?): http://java-source.net/open-source/crawlers
Ten jest profesjonalny, ale trudny (więc odpada): https://webarchive.jira.com/wiki/display/Heritrix/Heritrix
Ten jest chyba łatwiejszy: https://github.com/yasserg/crawler4j
Pod końcem jest nawet przykład ściągnięcia strony (ten kod z setCrawlStorageFolder). Tylko to mi zapisuje wszystkie pliki do folderu. Jak zrobić, żeby zapisywało to do bazy? W dokumentacji nic nie znalazłem ;/
Ręcznie zapisywać po pobraniu wszystkie pliki z folderu do bazy? A jak będę chciał wyświetlić tą stronę to znowu z bazy do tymczasowego folderu na dysku?
To chyba jest bardzo niewydajne. Nie da się tego zrobić jakoś na strumieniach (bez zapisywania na dysk)? Jakoś nadpisać tą metodę setCrawlStorageFolder (bo nie znalazłem nic w stylu setCrawlStorageDatabase).
Użyj pythona - znacznie mniej się upiszesz.
A jak w Pythonie? Też ręcznie czy są jakieś biblioteki (i łatwo z nich skorzystać? są przykłady?).
@mk321: Po co chcesz je trzymać w bazie ,aby wyświetlić potem w przeglądarce?
Nie lepiej trzymać je jako statyczne pliki na dysku a w bazie tylko identyfikatory które będziesz nadawał zapisując pliki?
są biblioteki - pisałem kiedyś crawlera w Javie i masakra z tego wyszła. A w pythonie prosty crawler już w kilkunastu linijkach kodu zamkniesz (używając choćby scrapy)
Po za tym muszę mieć to w bazie (bo chcę to móc potem przetwarzać). Odczytywanie z dysku będzie niewydajne.
@blue94: po prostu muszę w Javie i już (inżynierka, już wcześniej wybrałem).
Jeśli nie spodziewasz się nie wiadomo jakiego ruchu to może i w bazie będzie lepiej. Ja założyłem ,że pliki statyczne zawsze lepiej się keszują i jeśli masz zamiar tylko je wyświetlać to lepsze będą statyki.
Piszesz ,że chcesz je przetwarzać. Przetwarzać jednokrotnie czy wiele razy? Może się okazać ,że po przetworzeniu lepiej
Ogólnie to ma być coś w stylu: https://archive.org/web/ (oni korzystają z Heritrixa, ale ja go nie potrafię ogarnąć, w dodatku termin mnie goni).
O NoSQL dopiero zaczynam się interesować. Nie wszystko na raz. Na razie sobie z Hibernate skorzystam.
Nie umiem tylko skorzystać z
Komentarz usunięty przez autora