![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 103 Pomógł: 0 Dołączył: 9.01.2004 Ostrzeżenie: (20%) ![]() ![]() |
Witam
Aktualnie tworzę baze ogłoszeń Jeździeckich w ramach Jeździeckiego Centrum Informacyjnego www.QnWortal.com --- http://www.qnwortal.com/modules.php?name=ogloszenia Ogólnym celem Jeździeckiego Centrum Informacyjnego jest ułatwienie koniarzom dostępu do informacji. W Internecie pełno jest bezwartościwych stron, na których znajduje się pelno dziwnych i nieprzemyślanych tekstów/porad... Z tego względu staramy się selekcjonować te materiały, które są przydatne dla społeczeństwa koniarzy. Podobnie jest z ogłoszeniami... Po co użytkownik ma przeglądać setke stron z 3-4 ogłoszeniami, skoro wszsytkie może mieć w zasięgu 2 kliknięć myszką (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ? Tu pojawia się problem... Jak aktualizować setki ogłoszeń.. Dlatego też chcę stworzyć skrypt w php, który "pozbiera" ogłoszenia z innych końskich stron i umieści je w bazie... Ogólnie ma to działać na zasadzie: 1) uruchomienie skryptu raz dziennie przy pierwszym wywolaniu bazy 2) polaczenie sie ze stronami z listy, otwarcie strony (fopen) i sprawdzenie czy pojawily sie nowe ogłoszenia 3) jeśli tak, pobranie pól ogłoszenia według kryterium dla każdej strony, np . (imie, nazwisko, miejscowosc, kontakt, tytul, tresc, zdjecie ) 4) umieszczenie danych w bazie mysql wraz z flaga aktywne 5) wyslanie na podany w ogloszeniu email zapytania, czy uzytkownik wyraza zgode na umieszczenie ogloszenia w Jeździeckim Centrum Informacyjnym 6) po kliknieciu w link flaga zmieniana jest na 1 7) nowe ogloszenie jest wyswietlane w bazie... Tylko za bardzo nie wiem jak zrealizowac punkty 2 i 3, tak zeby otrzymac proste zmienne, które będę mógł umieścić w bazie Pozdrawiam i proszę o pomoc Patryk |
|
|
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 554 Pomógł: 0 Dołączył: 4.04.2002 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Polaczenie ze wszystkimi stronami to maly pryszcz. Gorzej ze na kazda z nich ma inny format danych. Bedziesz musial uzywac wyrazen regularnych do wyciagania danych. W przypadku gdy skanujesz jedna strone to nawet luz - gdy piec to rzeznia ale nigdy w zyciu nie uda ci sie wyciagac wynikow z setek stron. Jesli by nikt nigdy nie zmienial ich formy to moze wreszcie napisalbys parsery do kazdej strony ale tak nie jest i napewno nie bedzie. Po jakims czasie poprostu twoja witryna przestala by dzialac.
Jesli jednak upierasz sie przy swoim to przekazuje skrypt ktory kiedys umiescil w moim temacie castor [php:1:4c66245d58]<?php $adres="http://www.wp.pl/r/tg"; $host="www.wp.pl"; $jestLocation=true; while($jestLocation){ $content=""; $port="80"; $fp = fsockopen($host, $port, &$ErrNo, &$ErrStr); if (!$fp) { die ("$ErrNo $ErrStr"); }else{ fputs($fp, "GET {$adres} HTTP/1.1rn"); fputs($fp, "Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,*/*rn"); fputs($fp, "Accept-Language: dern"); fputs($fp, "User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)rn"); fputs($fp, "Connection: closern"); fputs($fp, "Host: {$host}rn"); fputs($fp, "rn"); while ($buf=fread($fp,1024)) { $content.=$buf; } } fclose($fp); if(eregi("Location: (.*)Connection:(.*)",$content,$rgs)){ $adres=chop($rgs[1]); unset($rgs); eregi("http://(.*)/",$adres,$rgs); $host=$rgs[1]; continue; }else if(eregi("<!-- srodkowa kolumna -->(.*)<!-- srodkowa kolumna koniec -->", $content, $rgs)){ $content=$rgs[0]; $jestLocation=false; } } echo "$content"; ?>[/php:1:4c66245d58] kiedys ten skrypt byl dla mnie czarna magia (a ch te wspomnienia). Niewiem czy dalej dziala bo od tego czasu wp zdazylo przejsc na XHTML i nie jestem pewien czy nie pozmieniali znacznikow srodkowej kolumny, potraktuj go wiec jako pomoc naukowa i przyklad tego ze te skrypty (konkretnej wyrazenia) po jakim czasie sie deaktualizuja. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 103 Pomógł: 0 Dołączył: 9.01.2004 Ostrzeżenie: (20%) ![]() ![]() |
Hmmm...
Skrypt całkiem całkiem, tylko chodzi mi o to, aby pobierać treści powtarzające się - np. Kod Imię: Jan Nazwisko: Kowalski <br>
Imię: Tomasz Nazwisko: Jakiś <br> ... Tak, aby skrypt zatrzymywał się po wystąpieniu jakiegoś słowa, i wyświetlał każde pole osobno ... np pobiera ciąg od Imię: do Nazwisko i zapisuje je jako zmienną imię, wtedy mogę wpisać je do bazy, pozniej pobiera dane od Nazwisko: do znacznika <br> i zapisuje je jako zmienna $nazwisko (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) i dopiero przechodzi do nastepnej lini, gdzie sytuacja się powtarza :| Tylko jak by to zrobic (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) :?: :!: :idea: |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 407 Pomógł: 0 Dołączył: 24.10.2002 Skąd: warszawa Ostrzeżenie: (0%) ![]() ![]() |
Cytat Jesli by nikt nigdy nie zmienial ich formy to moze wreszcie napisalbys parsery do kazdej strony ale tak nie jest i napewno nie bedzie
on ma na mysli chyba, ze bedzie te ogloszenia pobieral legalnie a nie, ze qnportal to zlodzieje i beda ssali tresc na ktora wlasciciele innych stron sobie zapracowali.. tak wiec ten problem chyba odpada... |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 103 Pomógł: 0 Dołączył: 9.01.2004 Ostrzeżenie: (20%) ![]() ![]() |
Cytat qnportal to zlodzieje i beda ssali tresc na ktora wlasciciele innych stron sobie zapracowali
uuuu... Złodziejami to raczej nie jesteśmy i ssać cudzej treści, na którą sobie ktoś zapracował nie zamierzamy... Myślałęm, że cel opisałem w miare dokładnie.. Ponadto autor strony nie posiada praw autorskich do ogłoszeń. Prawa takowe posiada autor ogłoszenia, więc skrypt będzie wysyłał maila z zapytaniem o zgode umieszczenia :| więc złodziejami raczej nie jesteśmy (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) P |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 407 Pomógł: 0 Dołączył: 24.10.2002 Skąd: warszawa Ostrzeżenie: (0%) ![]() ![]() |
spoko, nie oskarzam, ale zapotrzebowanie na takie skrypty mnie co raz bardziej przeraza :)
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 103 Pomógł: 0 Dołączył: 9.01.2004 Ostrzeżenie: (20%) ![]() ![]() |
Mogę Cię zapewnić, że jego celem nie będzie kradnięcie tekstów z różnych stron - do tego wystarczyłby mi powyzszy skrypt, albo CTRL + C i CTRL + V (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Pozdrawiam Patryk |
|
|
![]()
Post
#8
|
|
Grupa: Przyjaciele php.pl Postów: 554 Pomógł: 0 Dołączył: 4.04.2002 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Cytat Ponadto autor strony nie posiada praw autorskich do ogłoszeń. Prawa takowe posiada autor ogłoszenia, więc skrypt będzie wysyłał maila z zapytaniem o zgode umieszczenia więc złodziejami raczej nie jesteśmy P
Jak bys probowal pobierac ogloszenia z mojej strony to: 1) Uznal to za zlodziejstwo i szachrajstwo 2) Uniemozliwil bym twojemu skryptowi pobieranie danych z mojej strony 3) Wyslal bym wszystkim zaprzyjaznionym servisa maila z powiadomieniem ze stosujesz takie praktyki i jak je ukrocic Dlaczego? 1) Wykorzystujesz popularnosc mojej strony aby osiagnac DLA SIEBIE okreslone kozysci 2) Do tego odciagasz uzytkownikow od mojej stony wysylajac im darmowa reklame swojej strony 3) Nie zgodzilem sie na twoje praktyki a ty bezczelnie jedziesz wyrazeniem po mojej stronce i wyciagasz dane ktore byly przeznaczone dla ludzi chcacych poszukac jakiejs oferty a nie dla ciebie Ta wypowiedz traci waznosc w momecie gdy autor servisu zgadza sie na takie praktyki (bardzo watpie czy sie ktokolwiek zgodzi). Ale wtedy zainteresujcie sie zdalnym wywolywaniem uslug np SOAP. |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 103 Pomógł: 0 Dołączył: 9.01.2004 Ostrzeżenie: (20%) ![]() ![]() |
buuu...
Dlaczego ludzie oskarżają nas o jakieś dziwne interesy (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) cóż za przykre insynuacje (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) (( jak już wspomniałem, są to zaprzyjaźnione, zazwyczaj małe stronki, których autorzy wyrażają zgodę Cytat ssać cudzej treści, na którą sobie ktoś zapracował nie zamierzamy..
co do korzysci, moja działalność nie przynosi mi żadnych korzyści, robię to z poczucia obowiązku (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) (zresztą poczytaj FAQ, o autorze, to się wszystkiego dowiesz (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) P) |
|
|
![]()
Post
#10
|
|
Grupa: Przyjaciele php.pl Postów: 554 Pomógł: 0 Dołączył: 4.04.2002 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
No dobra. Pzekonales mnie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) .
Do wyciagania odpowiednich danych potrzebna ci jest wiedza ktora znajdzisz tutaj + skrypt ktory zacytowalem. Zanim zabierzesz sie za kodowanie spytaj autora strony czy nie moglby udostepnic specjalnie dla ciebie pliku ktory udostepnia dane w okreslonym formacie. Jesli wszyscy sie zgodza to zaoszczedzisz sobie duzo pracy. Ponadto takie dane mogly by byc udostepniane w formie dokumentu XML co ulatwi ci sprawe o tyle ze mozesz wykozystac gotowe parsery XML do ich odczytu. |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 59 Pomógł: 0 Dołączył: 16.03.2004 Ostrzeżenie: (10%) ![]() ![]() |
Autorzy sie zgadzaja bo nie placa za ilosc wypalonych danych na swoich kontach ... To sie z pewnoscia zmieni ... kwestia czasu. Poki co wszyscy sa przyzwyczajeni, ze za nic nie trzeba placic ...
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 14:46 |