Witam, mam mały problemik z napisaniem aplikacji. Mianowicie muszę napisać aplikację, która będzie wchodziła na pewne strony dotyczące sprzedaży i wynajmu mieszkań, potem będzie pobierała oferty tylko i wyłącznie z dnia dzisiejszego (czyli w poniedziałek tylko z poniedziałku, we wtorek tylko z wtorku itd, aplikacja będzie sprawdzać nowe oferty co jakiś czas, albo raz dziennie). W większości przypadków nie mam problemu z pobraniem najnowysz ofert, ponieważ po prostu uzytkownik będzie kopiował do aplikacji adres strony wyszukiwania (czyli jak wejdzie na stronę np gratka.pl i wyszuka sobie oferty z dnia dzisiejszego to link który się wygeneruje jest praktycznie zawsze taki sam dla każdego dnia w przypadku gratki oczywiście, więc zawsze wchodząc na ten link będę otrzymywał konkretne oferty). Potem wchodzę w konkretną ofertę i za pomocą wyrażeń regularnych pobieram potrzebne mi dane. Jednak w paru przypadkach wyszukiwanie po dacie dodania nie istnieje. I nie wiem jak ugryźć taką sytuację, aby także pobierać listę tylko najnowszych ofert. Ktoś pomoże?
Nie wiem czy tutaj się pomaga spamerom i inny kolekcjonerom danych osobowych
a nie zastanawialo cię czemu akurat nieruchomości i czemu tylko dom i mieszkania na sprzedaż i wynajem? chodzi o aplikację dla klienta. program ma służyć do zdobywania klienta. firma brokerska ręcznie wysyła meile do klientów z tych stron. ją mam to zautomatyzowac. mam podane 20 stron podstawowych. tak jak pisałem tylko na niektórych mam problem.
Na wysyłanie ofert trzeba mieć zgodę adresata.
wyrazasz zgodę rejestrując się i potwierdzając regulamin. To naprawdę jest wszystko legalnie. byłem u prawnika przed podjeciem się zlecenia.
poza tym jaki byłby sens dawania w swojej ofercie email żeby nikt nie mógł na niego napisać. sprawa wygląda tak:
Jan kowalski wystawia ofertę sprzedaży domu w serwisie gratka.pl. mój klient czyli firma zajmujaca się nieruchomościami pisze do niego na email czy nie chciałby sprzedać tego domu przez nich jako pośredników. teraz te emai/e wysyłają ręcznie. a chcą ta zautomatyzowac. gdzie tu łamanie prawa?
A ja myślałem, że rejestrując się na stronie costam.pl, wyrażam zgodę na otrzymywanie ofert handlowych od costam.pl. Okazuje się, że od całego Internetu....
Patrząc na wspomniane gratka.pl - wyrażam zgodę na publikację mojego adresu. Zgoda na publikację danych nie jest zgodą na otrzymywanie oferty handlowej, chętnie bym pogadał z tym prawnikiem.
Co do tematu.
Zadanie jest tak banalne, że nie wierzę, że profesjonalny programista (wnoszę z klient, konsultacja z prawnikiem) nie może sobie z nim poradzić. Wystarczy dla pożądanych stron stworzyć bazę adresów URL służących wyszukiwaniu, następnie wykorzystując parser DOM pobrać treść spod spreparowanego URLa i odseparować dane jakie się chce.
Modelowa sytuacja do zastosowania: dekoratorów (w zależności od strony), lub po prostu oddzielnych klas dla każdej witryny.
Akceptuję regulamin gratki.pl, nie jakiejś firmy Twojego szefa/zleceniodawcy. Jakby gratka.pl chciała tak udostępniać zgromadzone maile (za co bym chyba zabił, jakby to był mój mail), to by zrobili api, ale od tego mają postawioną stronę (z reklamami), żeby to ludzie na nią wchodzili.
Może taka rada na przyszłość: 95% rzeczy, które musisz zrobić pobierając treść innej strony i analizując jej źródło - jest kiepsko legalna.
I tak jak mówi @ wskaźnik (który mnie ubiegł postem) - ciężko, żeby programista biorący się za takie rzeczy nie potrafił tego zrobić.
Tak jak pisałem, nie mam problemu z praktycznie 90% stron które dostałem. Jednak mi chodzi o rozwiązanie automatyczne dla KAŻDEJ strony jaką poda użytkpwnik a nie tylko dla tych które mam w tej chwili. Więc to problem ogólny. Na sztywno dla konkretnej strony to wiem jak to zrobić. Jednak to będzie działać tylko dla tych ston. Powiedzmy dla 20, ale jak użytkownik zechce dodać stronę 21? co wtedy? Pytam o rozwiązanie ogólne dla każdej strony.
Swoją drogą, jak wystawiasz aukcję allegro i podajesz tam swój adres email (w treści aukcji), to będziesz na ten email dostawać tylko wiadomości od allegro czy też od użytkowników zainteresowanych twoją aukcją? Chyba jednak to drugie. W moim przypadku jest identycznie. Firma zajmuję się pośredniczeniem w sprzedaży domów (wynajmie itp itd). Tak żeby Kowalski nie musiał się tym zajmować tylko, żeby dostawał kasę. Nie musi jeźdźić z klientem, pokazywać domu itp itd. Tym się zajmuje pośrednik. A firma żeby zdobyć takiego klienta musi najpierw się z nim skontaktować, więc jeżeli Kowalski wystawił ofertę na np gratka.pl i podał tam swój email to podał go po to, aby potencjalni klienci itp mogli się z nim skontaktować. Jest to w pełni legalne jak się to robi ręcznie, ale jak już aplikacja to waszym zdaniem nie? Ona nie ma spamować co minutę, tylko wysłać jednego meila do jednego użytkownika. Bez żadnego powtarzania emaili cyklicznie itp itd. Więc czemu się upieracie, że to nie legalne?
To może inaczej - pochwal się swoją aplikacją gratce.pl, oni już zlokalizują Twojego bota i go zablokują. Potem pytaj ich - dlaczego.
Nie ma "uniwersalnego" rozwiązania :D Brzmi jakbyś chciał napisać coś, co dla KAŻDEGO wymyślonego przez jakiegoś prezesika adresu potrafiło rozpoznać gdzie, co, do czego - to już zaawansowana sztuczna inteligencja Panie. Jeżeli koleś poda Ci 20 adresów, ty z pomocą cieciów z forum napiszesz taką aplikację - to ok. Ale jak szefu każde dodać 21 adres do listy - to TY, człowiek, będziesz musiał nauczyć maszynę poruszania się po tej stronie.
Ale generalnie - parsować DOM umiesz raczej. No to w czym masz problem z przekopaniem się przez nieznane elementy, z paru podstron, wybieranie dat z tych elementów, aż trafisz na niedzisiejszą?
już z niczym. chcialem właśnie uzyskać odpowiedź o to czy da radę zrobić to rozwiązanie uniwersalne. wiem już że się nie da więc ok. te 20 stron to bez najmniejszego problemu zrobię. dzięki wielkie.
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.