-
Pranešimai
665 -
Užsiregistravo
-
Lankėsi
-
Laimėta dienų
2 -
Atsiliepimai
100%
Reputacijos išklotinė
-
-
Lapinskis sureagavo į Rokas Goes Wild Savęs tiuningas arba duok sau per kepalą, eik dirbt ir nuversk kalnus
Sveiki uždarbiečiai,
Seniai man brendo mintis šitą postą susukt. Dažnai susiduriu su problema - "o tai kodėl man nesiseka", "man taip nepavyktų", "aš negaliu".
Pyst per kepalą už tokius žodžius!
Forumiečiai, mano pradėtą sąrašiuką pildom ir siunčiam visiems sakantiems "negaliu, nemoku"!
1. Ieškok galimybių, kur atrodo jų nebėra. Nesąmonės yra labai gerai. Prieš du šimtus metų žmonės, sakę, kad žmogus išsilaipins mėnulyje, buvo vadinami debilais. Bet va, išsilaipino. Durnos idėjos yra labai gerai.
2. Koncentruokis į sprendimą, o ne problemą. "Aš neturiu ką apsirengti" - EIK IR NUSIPIRK NEVERKĘS/US.
3. Niekas ant padėklo neatneš ir į rankas nepaduos. Sėkmę kurk pats, o nelauk, kol ji "netikėtai" ateis.
4. Turi baimių? Gerai, vadinasi esi protiškai sveikas. Bijai kažką daryti? O kas blogiausia gali nutikti, jei nepasiseks? Neatrodo taip baisiai? TAI KO DAR SĖDI?
5. Nesiskųsk. Niekam neįdomios tavo problemos, be to, negatyvūs žmonės turi savybę atstumti jiems reikalingus žmones.
6. Prisiimk atsakomybę ir NIEKADA NESITEISINK. Pamatysi, viskas pradeda tvarkytis, kai nustoji teisintis. Pavėlavai, nes tingėjai keltis? Taip ir sakyk, o ne "akumuliatorius nusėdo", nes kad ir kas bebūtų, vistiek pasirodai blogai, tai geriau jau bent sąžiningam būt.
7. Geriausias laikas pasodinti medį buvo dvidešimt metų atgal. Antras geriausias laikas - dabar. Imk ir padaryk darbus, kuriuos reikia padaryti DABAR. Nieko neatidėliok, nebent būtina atidėti, tam kad pavyktų.
10. Gyvenk gyvenimą dabar. Sakai po dvidešimt metų turėsi gerovę? O kas jeigu ne? Gyvenk šiandien, neužmiršk rytojaus, bet ateitį palik ateičiai.
11. Visada mokykis. Net virtuvėj, kol daraisi arbatą/kavą, sukinėk peilį rankose, mokinkis jį valdyti. Užimsi laiką, išmoksi, nes niekada nežinai, kas gyvenime gali nutikti ir ko reikės.
12. Žinok ko nori ir turėk planą. "Noriu daug pinigų" Ką su jais veiksi? "Nežinau" Tai gal tau jų ir nereikia?; Planavimas pašalina netikėtumus ir mažina baimes, nes kai esi pasiruošęs viskam, niekas nebaisu. "O kas jeigu?" yra geriausias klausimas planuojant.
13. Visada apskaičiuok riziką. Kai perki naują daiktą, juk nesunku skirti dešimt minučių jo aprašymams ir nuomonėms paskaityti internete, negu po to gailėtis metus/du/dešimt/visą gyvenimą.
14. Eik naujais keliais - seni keliai veda ten pat, kur viskas aišku ir sėkmę pasiėmė kiti, tie, kurie tais keliais ėjo pirmi.
15. Daryk viską kaip sau ir dar pridėk. Pamatysi, "maladėc" reputacija ateis neprašant. š*do malimas garbės neprideda.
16. Venk idiotų. Jie siurbia energiją ir mintis, skundžiasi, verkia ir šiaip užknisa. Nieko gero. Next.
17. Visi mes gyvename už tą "o kaip tu čia padarei, koks tu maladėc", mums reikia to paplekšnojimo per petį, brendi per šūdą, nes poto sako "o, tau pavyko, tu stiprus, koks tu kietas, geras ir malonus". STOP. Atsisakyk šito. Gyveni sau, ne kitiems, atprask nuo pagyrų. Tikslas geras gyvenimas, o ne kitų pagyros. Čia jau aukštas pilotažas, šitą įvaldžius tampi po.chuistu (pagal kitus), bet perlipi per save ir darai tą ką reikia ir atsisakai to ko nereikia. Nerišlios mano mintys čia, bet tikiuos supratot. Nedirbk už pagyras, dirbk už atlygį.
18. IŠEIK IŠ KOMFORTO ZONOS. Ten nieko nevyksta. Nuotykiai už durų, pasaulyje. Be iššūkių netobulėsi. Netobulėsi - gyvenimas negerės. Patiko frazė - "People die when they get boring to God. Don't get boring". Kitaip tariant gyvenk aktyviai, priimk iššūkius, niekas neuždirbo milijono gulėdamas prie TV.
Tai tiek norėjau parašyt, galit su manim sutikt arba ne, bet jeigu jaučiat, kad kažko trūksta, BŪTINAI PRIRAŠYKIT.
Sėkmės darbuose ir gyvenime!
-
Lapinskis sureagavo į Arvydas Tekstas išlenda iš ribų. (HTML/CSS)
koduotojai...
width: 300px; word-wrap: break-word; white-space: -moz-pre-wrap !important; white-space: -pre-wrap; white-space: -o-pre-wrap; white-space: pre-wrap;
-
Lapinskis gavo reakciją nuo edis2 Web scrapping naudojant PHP
Sveiki uždarbiečiai, jau vienur prisižadėjau, kad parašysiu šiek tiek apie web scrapping. Tai pirmas mano straipsnis šiame forume, todėl nemaišykit su žemėmis be pagrindo. Konstruktyvi kritika visada laukiama, o šiaip ir pasiginčyti galiu, jeigu atsiras žmonių, manančių, kad mano pateikti programinio kodo pavyzdžiai yra neteisingi ar, kad galima padaryti kažką geriau. Pats esu gana dar jaunas ir daug ko nemoku, tačiau trokštu išmokti. Iš savo, ir kitų mano artimųjų patirties galiu pasakyti, kad srities specialistu tampi mokydamas kitus.
Pradedant, norėčiau apžvelgti kam web scrapping gali būti panaudojamas. Šį metodą programuotojai naudoja tada, kuomet reikia gauti informacijos iš kitos svetainės ir nenorima dirbti "copy->paste" principu. Web scrapping tai padarys už jus. Kadangi daugiausia teko programuoti PHP programavimo kalba, tai tik ja galėsiu pateikti pavyzdžių.
Vogti/skolintis/pasiimti informaciją PHP pagalba iš kitų interneto svetainių galima keletu būdų. Tačiau aprašysiu tik du - vieną, kuris nepatogus ir jį naudojant gali prasidėti rimtas "galvos skausmas", ir antrą - kurį pats naudoju ir rekomenduoju naudoti kitiems.
Pirmasis būdas. Jame naudojama curl biblioteka, preg_match_all funkcija. Blogiausia šio metodo savybė - reikia rašyti regexp išraiškas. Man (spėju ir kitiems programuotojams) tai yra "pain in the ######". Šis metodas turi ir pliusų - juo parašyti script'ai veikia šiek tiek greičiau negu antruoju.
Daug netuščiažodžiaujant, štai kodo pavyzdys (ačiū Sauliui):
<?php function rasti_turini( $pradzia, $galas, $url ) { $pradzia = str_replace('/', '\/', $pradzia); $galas = str_replace('/', '\/', $galas); $regexp = '/' . $pradzia . '(.+?)' . $galas . '/'; preg_match_all($regexp, $url, $atitike); return $atitike[0]; } function curl( $url ) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $result = curl_exec($ch); curl_close($ch); return $result; } //magic (: $url = curl( 'http://www.orai.lt/lt/prognozes/vilnius' ); $orai = rasti_turini( '<td class="oraiTableRow">', '</td>', $url ); //atvaizduojame antrąjį masyvo elementą echo $orai[1]; //jeigu norite pažiūrėti, kaip atrodo gautas masyvas, atkomentuokite sekančias 3 eilutes //echo '<pre>'; //print_r( $orai ); //echo '</pre>'; ?>
Antrasis būdas. Tai mano mėgstamiausias, ir mano nuomone geriausias būdas gauti informaciją iš kito tinklalapio. Kaip taip padaryti? Ogi pasitelkti simple html DOM biblioteką. :) Jos pagalba galima rašyti elementų select'orius jQuery stiliumi.
Pvz.:
$html->find('table.bioTableAlt tbody tr');
Argi gali būti patogiau ir greičiau? :rolleyes:
Tarkim turime užduotį, mums reikia gauti visą geriausių teniso žaidėjų sąrašą iš šitos svetainės. Taip, visą 1000 :) Atkreipkite dėmesį, kad lentelė atnaujinama kiekvieną pirmadienį. Kad šis kodas veiktų, jums prireiks parsisiųsti simple html dom klasę.
Kodas:
<?php //nuimame laiko limita set_time_limit(0); //simple html dom include('simple_html_dom.php'); //------------------------------------------------------------------------------ // Nuorodos //------------------------------------------------------------------------------ //paskutinio pirmadienio data $date = date('d.m.Y', strtotime('last monday')); //užkomentuokit dali nuorodu, jeigu norit greiciau pamatyti rezultata $urls = array(); $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=1'; $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=101'; $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=201'; $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=301'; $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=401'; $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=501'; $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=601'; $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=701'; $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=801'; $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=901'; //inicijuojam masyvą $zaidejai $zaidejai = array(); //praskanuojam visas nuorodas foreach($urls as $url) { //gauname duomenis iš svetainės $html = file_get_html($url); foreach( $html->find('table.bioTableAlt tbody tr') as $a ) { // Duomenys apie žaidėją: // pozicija --- vardas, šalis --- žaidėjo taškai --- pozicijos pokytis --- turnyrų skaičius $zaidejas['pozicija'] = $a->children(0)->plaintext; $zaidejas['vardas'] = $a->children(1)->plaintext; $zaidejas['taskai'] = $a->children(2)->plaintext; $zaidejas['ppokytis'] = $a->children(3)->plaintext; $zaidejas['tskaicius'] = $a->children(4)->plaintext; $zaidejai[] = $zaidejas; } } //pašalinam nereikalingus masyvo elementus (lentelės heading'us) unset( $zaidejai[909] ); unset( $zaidejai[808] ); unset( $zaidejai[707] ); unset( $zaidejai[606] ); unset( $zaidejai[505] ); unset( $zaidejai[404] ); unset( $zaidejai[303] ); unset( $zaidejai[202] ); unset( $zaidejai[101] ); unset( $zaidejai[ 0 ] ); //sutvarkom array keys $zaidejai = array_values( $zaidejai ); //pažiūrim gautą masyvą echo '<pre>'; print_r( $zaidejai ); echo '</pre>'; ?>
Štai dar vienas pavyzdys, kuriame gauname filmo reitingą iš imdb.com:
<?php //simple html dom biblioteka include('simple_html_dom.php'); //filmo url $url = 'http://www.imdb.com/title/tt0485947/'; //gauname svetainės html $html = file_get_html($url); //gauname filmo reitingą $ratio = $html->find('span.rating-rating', 0)->plaintext; echo $ratio; ?>
Pabaigai, noriu paminėti, kad su web scrapping galima sukurti gausybę naudingų ir niekam nekenkiančių dalykėlių, tačiau su juo galima pilnai pavogti turinį is RSS srauto ar iš paprasčiausios svetainės. Bet kaip tai padaryti - susigalvokite patys.
Ir tikiuosi, jog jums patiko, bei buvo naudingas pirmasis mano straipsnis uždarbis.lt forume :)
-
-
Lapinskis sureagavo į Silke Nemokamas dizaino karpymas ir kodavimas
Tai, kad nemanau, jog jis šaipėsi, tiesiog numetė link'ą į dizainus praktikai :)
-
Lapinskis sureagavo į Simonas Sėkmingos internetinės parduotuvės kūrimas
Sveiki visi,
Tęsiu savo straipsnių rašymą uždarbis.lt forume. Šio straipsnio tema, yra "kaip sukurti sėkmingą internetinę svetainę".
Prieš skaitant šį straipsniuką, siūlau paskaityti šiuos straipsnius:
Kur slypi internetinio tinklapio vertė?
Kas yra geras svetainės dizainas
Dažnai būna, kad sugalvojate kažkokią internetinę idėją. Turbūt tik ją sugalvojęs, dažnas pamąsto, kad iš jos galėtų užsidirbti. Pradedame galvoti visokius planus, kaip tai įgyvendinti, bet retai tai užsirašome.
Taigi, mano pirmasis patarimas, būtų sugalvojus gerą idėją (na, ji jums visada bus iš pradžių gera), susirašyti ant balto popieriaus lapo, tokius dalykus, kaip įgyvendinimas, funkcijos, išlaidos, bei, kuo šis projektas bus KITOKS.
KITOKS projektas - ir vėlgi, labai įdomi tema, nuo kurios priklauso didžioji sėkmės dalis. Kitoks projektas, gali būti unikali idėja, kuri internete dar nebus įgyvendinta, kitokia parduotuvė, kuri pardavinėja prekes tokias kaip ir kituose parduotuvėse, bet daro tai geriau, t.y pardavinėja pigiau bei turite tarkime kokią greito ir nemokamo pristatymo funkciją.
Taigi, realiai, iš viso šito, išplaukia klausimas - Kuo mano sugalvota svetainė turi būti geresnė už kitas svetainės, arba Kodėl mano internetinėje parduotuvėje žmoniems verta pirkti
Taip pat mano nuomone, labai svarbu, yra paklausti pačio savęs. Ar aš pirkčiau šioje parduotuvėje prekę, ar ne? Taip, gali būti taip, kad jūs galvodamas idėją galvojote apie tai, ko reikėtų kitiems, tačiau tuo atveju, jūs pasiklauskite savo draugų, ar jie pirktų tą prekę.
Puikus pavyzdys, galvojom su draugu pardavinėti LED marškinėlius. Tačiau, geriau apmąsčius, susidūrėme su keliomis kliūtimis.
Pirma kliūtis tai tokia, kad internete jau buvo parduotuvių, kurios juos pardavinėja. Mes tų marškinėlių pigiau negalėtume parduoti, o jei pardavinėsim brangiau - niekas nepirks.
Kitas dalykas, jei vis dėl to pakelsi kaina, kad apsimokėtų juos pardavinėti, ar tai padės? Mano verslo modelis, yra nuo prekės užsidirbti bent 40% proc, taigi galiausiai kaina gavosi apie 60-70 LT. Ir, aš paklausiau savęs, ar aš pirkčiau šiuos marškinėlius už tiek. - Atsakymas, ne. Taip pat paklausiau draugo, išgirdau tą patį atsakymą, dar poros draugų - ir vėl tas pats ne. Taigi, ši idėja užsibaigė, net neprasidėjus. Ir gerai, kad taip atsitiko, nes jei savęs nebūčiau to paklausęs, būčiau praradęs daug pinigų.
Išlaidos
Prieš sukuriant internetinį projektą, labai svarbu yra apskaičiuoti išlaidas. Ir tai yra labai svarbu padaryti tiksliai, nes apsiskaičiavus, gali jūsų idėja sužlugti. Iš anksto privalote visą tai numatyti. Susirašykite, kiek išleisite programuotojui bei dizaineriui (jei pats tuo neužsiemate), kiek išleisite hostingui. Galų gale, būtinai pasilikite pinigų reklamai.
Funkcijos
Prieš pradedant kurti internetinį tinklapį, sugalvokite visas tinklapio funkcijas. Jas turėsite pasakyti programuotojui, ir neduok Dieve pamiršite jas jam pasakyti, tada gali tekti keisti visą sistemą.
Dar pora patarimų
1. Negalvokite apie pinigus. Tai trukdys jums įsigilinti į patį projektą. Iš patirties sakau, kad geriausia yra sukurti projektą, ir jį plėtoti, tada pinigai ateis patys. Juk visi geriausi projektai, kai buvo kuriami, nebuvo galvojama apie pinigus.(pvz twitter, facebook, google). Tik po kokių metų ar dviejų, turėtumėte pradėti galvoti apie uždarbį. Tada jūs savo projektą pažinsite, ir iš jo jau gali būti atsiradę naujų uždarbio būdų.
2. Užsirašę idėją, ir pasirašę tuos dalykus, kaip įgyvendinimas, funkcijos, kuo projektas bus kitoks, ir išlaidas, duokite mintims susigulėti. Dažniausiai tik sugalvota idėja mus apakina, ir mes tarsi pro rožinius akinius į ją žiūrime. Palaukite kokią savaitę, ir vėl paskaitykite tai ką esate pasirašę. Jeigu idėja Jums patiks - sveikinu, ir linkiu kibti į darbus.
3. Atsiminkite, kad tik pagalvojus apie idėja, iškarto yra 50proc, kad ji bus sėkminga. Pradėjus ją įgyvendinti, procentai pakyla iki 80proc.
4. Nesustokite pasitaikius pirmajai nesėkmei. Darykite tai, kuo tikite. Svarbu, yra neklausyti kitų, nes jai jau pradėjote, tai turite tęsti (na, nebent labai einate į "minusą"
5. Išsirinkite gerą domeną, kad jis atitiktų svetainės turinį, bei pavadinimas kad būtų skambus bei įsimintinas.
6. Pasirinkite kokybišką hostingą (nepataupykite), nes to priklausys jūsų svetainės ruputacija.
Ir dar ant galo, viena iš istorijų:
-
Lapinskis gavo reakciją nuo 0zas WP skriptas sitemap
http://wordpress.org/extend/plugins/geo-captcha/
-
Lapinskis gavo reakciją nuo 49volro Padekite surasti Wordpress plugin
Šitas dalykas netiktų? http://codex.wordpress.org/Function_Reference/wp_count_posts
-
Lapinskis sureagavo į Arvydas Anekdotai
1937-ieji metai. Josifas Stalinas nuvažiuoja į mokyklą aplankyti mokinių, papasakoti jiems apie komunizmą ir pan. Ateina į vieną klasę ir ima kažką pasakoti. Vaikams nuobodu, jie ima knapsėti. Tai matydamas, Stalinas iš monologo pereina į dialogą:
- Sakykit, vaikučiai, gal turite kažkokių klausimų?
Ranką pakelia Petia:
- Taip, turiu tris klausimus.
- Sakyk, - leidžia Stalinas.
- Pirma: Kas nužudė Kirovą? Antra: Kodėl žmonės šalyje taip skursta? Trečia: Kodėl šalyje nuolat pažeidžiamos žmogaus teisės, vykdomi trėmimai?
Stalinas išbąla, jį išpila šaltas prakaitas, bet staiga suskamba skambutis, vaikai pašoka ir išbėga iš klasės. Kitos pamokos pradžioje Stalinas pratęsia:
- Na, ar dar kas nors turite man klausimų?
Ranką pakelia Maša:
- Taip, turiu penkis klausimus.
- Sakyk, - leidžia Stalinas.
- Pirma: Kas nužudė Kirovą? Antra: Kodėl žmonės šalyje taip skursta? Trečia: Kodėl šalyje nuolat pažeidžiamos žmogaus teisės, vykdomi trėmimai? Ketvirta: Kodėl skambutis nuskambėjo 20 minučių anksčiau? Penkta: Kur dingo Petia?
----------------------------------------------------------------------
Vokiečių kariuomenės štabe:
-Jūsų aukštybe, drįstu pranešti, kad Italija įstojo į karą.
-Nieko baisaus, pasiųskite prieš juos dvi divizijas.
-Jūsų aukštybe, drįstu patikslinti, kad Italija įstojo į karą mūsų pusėje.
-Tokiu atveju jau blogai. Pasiųskite jiems į pagalbą dešimt divizijų.
----------------------------------------------------------------------
Trys didžiausios XX a. katastrofos:
Hirošima - 1945
Černobylis - 1986
Windows - 1995
----------------------------------------------------------------------
Su gilia mintimi :)
Laba diena, jūs paskambinote į karinį komisariatą. Jei jūs norite tarnauti kariuomenėje - spauskite žvaigždutę; jei jūs nenorite tarnauti kariuomenėje - spauskite groteles.
----------------------------------------------------------------------
Taip pat gili mintis...
1944-ieji, sugriauta Varsuva, pro griuvesius bega mazas berniukas, vardu Karolis Wojtyla, o ji vejiasi SS kareivis rekdamas:
- Halt!
Tada is dangaus pasigirsta balsas:
-Palauk, nezudyk jo, jam bus lemta buti popieziumi! Esesininkas susimasto ir taria:
-Gerai, bet po jo popieziumi busiu as!
-
Lapinskis sureagavo į Silke jquery klausimas
Būtų gerai, kad tiems <a>, kurių title reikia rodyti, uždėtum dar ir kokią klasę, nes dabar nebent prie visų galima tai prikabinti :)
$('a').mouseover(function() { $('#title_tekstas').html($(this).attr('title')); }); $('a').mouseout(function() { $('#title_tekstas').html(''); // arba defaultinis tekstas kažkoks });
Per daug netikrinau, bet esmė turėtų būti tokia.
-
Lapinskis sureagavo į Silke Kaip sukurti weba
Dar vienas perliukas, nori „kurti weba“ - imk PHP-Fusion...
...arba pavok TVS, kad būtum kietas... :lol:
-
Lapinskis sureagavo į north Besikeičiantis IP
Vo priminei.. Jis jau nekarta cia taip, kaip ir su hostu buvo.. Galvos skausmas. :D
-
Lapinskis gavo reakciją nuo Keturkaimis Keturkaimis
Tvarkinga svetainė, turinti ateitį. Reikėtų kiek padirbėti vėliau su rimtesniu dizainu, bet kol kas tai viskas čiki piki. :) Linkiu tau neprarasti entuziazmo rašant ir kuriant Keturkaimis.eu :)
-
Lapinskis sureagavo į Silke Besikeičiantis IP
Tai pats pasidaryk, arba pats spaudyk. Arba nueik į maximą, išsiimk iš kepalo duonos vieną riekę ir sakyk, kad neverta mokėt. Ir nemokėk :)
-
Lapinskis sureagavo į Silke Pora žaidėjų žaidimai wordpresse.
Dėl žaidimų, tai nieks nedalina tokių dalykų, kaip multiplayer pokerio nemokamai :)
-
Lapinskis gavo reakciją nuo edis2 Web scrapping naudojant PHP
Sveiki uždarbiečiai, jau vienur prisižadėjau, kad parašysiu šiek tiek apie web scrapping. Tai pirmas mano straipsnis šiame forume, todėl nemaišykit su žemėmis be pagrindo. Konstruktyvi kritika visada laukiama, o šiaip ir pasiginčyti galiu, jeigu atsiras žmonių, manančių, kad mano pateikti programinio kodo pavyzdžiai yra neteisingi ar, kad galima padaryti kažką geriau. Pats esu gana dar jaunas ir daug ko nemoku, tačiau trokštu išmokti. Iš savo, ir kitų mano artimųjų patirties galiu pasakyti, kad srities specialistu tampi mokydamas kitus.
Pradedant, norėčiau apžvelgti kam web scrapping gali būti panaudojamas. Šį metodą programuotojai naudoja tada, kuomet reikia gauti informacijos iš kitos svetainės ir nenorima dirbti "copy->paste" principu. Web scrapping tai padarys už jus. Kadangi daugiausia teko programuoti PHP programavimo kalba, tai tik ja galėsiu pateikti pavyzdžių.
Vogti/skolintis/pasiimti informaciją PHP pagalba iš kitų interneto svetainių galima keletu būdų. Tačiau aprašysiu tik du - vieną, kuris nepatogus ir jį naudojant gali prasidėti rimtas "galvos skausmas", ir antrą - kurį pats naudoju ir rekomenduoju naudoti kitiems.
Pirmasis būdas. Jame naudojama curl biblioteka, preg_match_all funkcija. Blogiausia šio metodo savybė - reikia rašyti regexp išraiškas. Man (spėju ir kitiems programuotojams) tai yra "pain in the ######". Šis metodas turi ir pliusų - juo parašyti script'ai veikia šiek tiek greičiau negu antruoju.
Daug netuščiažodžiaujant, štai kodo pavyzdys (ačiū Sauliui):
<?php function rasti_turini( $pradzia, $galas, $url ) { $pradzia = str_replace('/', '\/', $pradzia); $galas = str_replace('/', '\/', $galas); $regexp = '/' . $pradzia . '(.+?)' . $galas . '/'; preg_match_all($regexp, $url, $atitike); return $atitike[0]; } function curl( $url ) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $result = curl_exec($ch); curl_close($ch); return $result; } //magic (: $url = curl( 'http://www.orai.lt/lt/prognozes/vilnius' ); $orai = rasti_turini( '<td class="oraiTableRow">', '</td>', $url ); //atvaizduojame antrąjį masyvo elementą echo $orai[1]; //jeigu norite pažiūrėti, kaip atrodo gautas masyvas, atkomentuokite sekančias 3 eilutes //echo '<pre>'; //print_r( $orai ); //echo '</pre>'; ?>
Antrasis būdas. Tai mano mėgstamiausias, ir mano nuomone geriausias būdas gauti informaciją iš kito tinklalapio. Kaip taip padaryti? Ogi pasitelkti simple html DOM biblioteką. :) Jos pagalba galima rašyti elementų select'orius jQuery stiliumi.
Pvz.:
$html->find('table.bioTableAlt tbody tr');
Argi gali būti patogiau ir greičiau? :rolleyes:
Tarkim turime užduotį, mums reikia gauti visą geriausių teniso žaidėjų sąrašą iš šitos svetainės. Taip, visą 1000 :) Atkreipkite dėmesį, kad lentelė atnaujinama kiekvieną pirmadienį. Kad šis kodas veiktų, jums prireiks parsisiųsti simple html dom klasę.
Kodas:
<?php //nuimame laiko limita set_time_limit(0); //simple html dom include('simple_html_dom.php'); //------------------------------------------------------------------------------ // Nuorodos //------------------------------------------------------------------------------ //paskutinio pirmadienio data $date = date('d.m.Y', strtotime('last monday')); //užkomentuokit dali nuorodu, jeigu norit greiciau pamatyti rezultata $urls = array(); $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=1'; $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=101'; $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=201'; $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=301'; $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=401'; $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=501'; $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=601'; $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=701'; $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=801'; $urls[] = 'http://www.atpworldtour.com/Rankings/Singles.aspx?d='.$date.'&c=&r=901'; //inicijuojam masyvą $zaidejai $zaidejai = array(); //praskanuojam visas nuorodas foreach($urls as $url) { //gauname duomenis iš svetainės $html = file_get_html($url); foreach( $html->find('table.bioTableAlt tbody tr') as $a ) { // Duomenys apie žaidėją: // pozicija --- vardas, šalis --- žaidėjo taškai --- pozicijos pokytis --- turnyrų skaičius $zaidejas['pozicija'] = $a->children(0)->plaintext; $zaidejas['vardas'] = $a->children(1)->plaintext; $zaidejas['taskai'] = $a->children(2)->plaintext; $zaidejas['ppokytis'] = $a->children(3)->plaintext; $zaidejas['tskaicius'] = $a->children(4)->plaintext; $zaidejai[] = $zaidejas; } } //pašalinam nereikalingus masyvo elementus (lentelės heading'us) unset( $zaidejai[909] ); unset( $zaidejai[808] ); unset( $zaidejai[707] ); unset( $zaidejai[606] ); unset( $zaidejai[505] ); unset( $zaidejai[404] ); unset( $zaidejai[303] ); unset( $zaidejai[202] ); unset( $zaidejai[101] ); unset( $zaidejai[ 0 ] ); //sutvarkom array keys $zaidejai = array_values( $zaidejai ); //pažiūrim gautą masyvą echo '<pre>'; print_r( $zaidejai ); echo '</pre>'; ?>
Štai dar vienas pavyzdys, kuriame gauname filmo reitingą iš imdb.com:
<?php //simple html dom biblioteka include('simple_html_dom.php'); //filmo url $url = 'http://www.imdb.com/title/tt0485947/'; //gauname svetainės html $html = file_get_html($url); //gauname filmo reitingą $ratio = $html->find('span.rating-rating', 0)->plaintext; echo $ratio; ?>
Pabaigai, noriu paminėti, kad su web scrapping galima sukurti gausybę naudingų ir niekam nekenkiančių dalykėlių, tačiau su juo galima pilnai pavogti turinį is RSS srauto ar iš paprasčiausios svetainės. Bet kaip tai padaryti - susigalvokite patys.
Ir tikiuosi, jog jums patiko, bei buvo naudingas pirmasis mano straipsnis uždarbis.lt forume :)
-
-
Lapinskis sureagavo į Arvydas css input stiliaus pritaikymas
ir kaip jūs gaunate užsakymus :blink:
elementariausių dalykų nemokate, siaubas :|
-
Lapinskis sureagavo į Arvydas Mokymosi tikslais atlieku nedidelius PHP/CURL darbelius
galiu duoti šiaip darbelio bendram supratimui pagilinti, jei tikrai nori?
-
Lapinskis sureagavo į Arvydas Mokymosi tikslais atlieku nedidelius PHP/CURL darbelius
darbelis pakankamai sudėtingas duotas, panikos veide nesimatė ^_^ turėtų įveikti...
-
Lapinskis sureagavo į Arvydas Ar įmanoma išgauti failo svorį iš zippyshare.com?
rašo visi, nes siūlo tau lengvesnį variantą. Kodėl tau jis netinka ir kodėl būtent tiesiogiai reikia nuskaitinėti tą dydį?
-
Lapinskis sureagavo į Arvydas Swedbank. Grinujų pinigų įnešimas
tokiais atvėjais reikia iškarto skambinti ant bankomato esančiu numeriu ir pranešti apie "nutikimą", tada nueisi į banką ir parašysi pareiškimą. Kai bankomate bus aptikta atlikusių pinigų atgausi juos. Jei nebus, rūkysi.
Koks bankomato adresas, kad neužsirauti ant tokių?
-
Lapinskis sureagavo į Arvydas paprasčiausi vaistai
1. Mezym
2. nežinau, neprireikė (alaus gal :P )
3. Eritromicin
-
Lapinskis sureagavo į Arvydas Neatsidaro bagazine
sėdynes galines atversk ir įlindęs pažiūrėk ar trosiukas nutrūkęs ar spyna prasukta. Jei ką su atsuktuvu turėtum atidaryti iš vidaus