Vecteevs Posted October 12, 2011 Report Share Posted October 12, 2011 Sveiki, tātad ir viena problēma.. Nevaru izdomāt kā saņemt katru nākošu lapaspusi un dabūt ārā no tās saturu.. pagaidām man ir tā $pattern_3 = '/<p class\=\"lapaspuses\">(.*?)<\/p>/i';// paterns lai dabutu dalishanu lapas preg_match_all($pattern_3, $newcontent, $matches_3); foreach($matches_3[1] as $page_url){ } /* links no dalishanas lapas */ $pattern_4 = '/<a href\=\"(.*?)\">/i'; preg_match_all($pattern_4, $page_url, $matches_4); foreach($matches_4[1] as $page_urlzs){ echo '<br><b>'.$page_urlzs.'</b><br>'; $content2 = file_get_contents($page_urlzs); $newlines2 = array("\t","\n","\r","\x20\x20","\0","\x0B"); //eskeipojam dalishanu rindas $newcontent2 = str_replace($newlines2, "", html_entity_decode($content2)); //eskeipojam dalishanu rindas $pattern = '/<h3 class\=\"h3klase\">(.*?)<\/h3>/i'; preg_match_all($pattern, $newcontent2, $matches); foreach($matches[1] as $name){ echo $name.'<br'; } } /* Tā izskatās dalīšana lapās iekš čekojamās lapas.. gribu lai čekotu visas lapas pēc kārtas līdz pēdējai, nevis tikai šīs trīs, kā to izdarīt? Lapas 1 2 3 … 8 Next */ Quote Link to comment Share on other sites More sharing options...
marcis Posted October 12, 2011 Report Share Posted October 12, 2011 Nenodarbosiemies ar pornogrāfiju. Regulārās ekspresijas nav domātas html, xml un tml strukturētu datu pārsēšanai. Izmanto DOM. Quote Link to comment Share on other sites More sharing options...
Vecteevs Posted October 12, 2011 Author Report Share Posted October 12, 2011 kādā sakarā pornogrāfija?:D Bet šis veids arī labi strādā.. Quote Link to comment Share on other sites More sharing options...
Kavacky Posted October 12, 2011 Report Share Posted October 12, 2011 Es šaubos, ka vienkāršu datu izvilkšanai ir nepieciešams pievienot visu DOM funkciju overhead'u, tā vietā, lai uzrakstītu pāris elementārus regex'us. Quote Link to comment Share on other sites More sharing options...
v3rb0 Posted October 12, 2011 Report Share Posted October 12, 2011 tik jautājumu nākošriez mēģini noformulēt kaut kā tā: - ir tāds un tāds html - vajag dabūt tādu un tādus datus - ja ir jēga, tad pieliec to kas tagad ir un nedarbojas. Quote Link to comment Share on other sites More sharing options...
nemakuphp Posted October 12, 2011 Report Share Posted October 12, 2011 Nu vispār jau tev pietiek, ja atlasi tikai pirmo un pēdējo lapaspusi, un tad ej vienkārši visām cauri. Quote Link to comment Share on other sites More sharing options...
Vecteevs Posted October 12, 2011 Author Report Share Posted October 12, 2011 bet es jau nezinu cik tās lapaspuses ir.. Man atlasās tikai tās, kuras ir redzamas html kodā proti 1 2 3 ... 8 Next Bet vajag tā.. Ja ir atvērta 3lpp tad parādās 3 4 5 ... 9 Next Vajadzīgos datus pagaidām izvelk no 1 2 3 un 8 lpp :( Quote Link to comment Share on other sites More sharing options...
Kavacky Posted October 12, 2011 Report Share Posted October 12, 2011 (edited) Pieņemsim, ka ir 2 lapas. Ielasi 1. lapu. Tad skaties, vai eksistē pagerim nākamā lapa - 2. Ielasi nākamo. Skaties, vai eksistē (2 + 1). lapa. Ja neeksistē, tātad gatavs. Edited October 12, 2011 by Kavacky Quote Link to comment Share on other sites More sharing options...
Kemito Posted October 12, 2011 Report Share Posted October 12, 2011 Es ja nemaldos mārča funkciju šeit biju izmetis kaut kur forumā jau kādam, par lappušu dalīšanu - STRĀDĀ UN NORMĀLI. Kur problēma iebakstīt meklētājā un izčekot šo to? Quote Link to comment Share on other sites More sharing options...
daGrevis Posted October 12, 2011 Report Share Posted October 12, 2011 Kemi, šitas gluži nav tīrs pagination. Citiem vārdiem sakot, viņam nevajag pagination. Quote Link to comment Share on other sites More sharing options...
marcis Posted October 12, 2011 Report Share Posted October 12, 2011 Kavacky, nepiekrītu. Ja tev jāapstrādā strings, tad loģiski, ka stringu funkcijas, regexi, u.c. Taču šeit DOM + XPath un nav nekādu problēmu. Salīdzinājums varbūt stulbs, bet tas nestāv tālu no substr(integer, 0, -1) == 1 un tml vienkārši neloģiskiem/nepareiziem risinājumiem. Quote Link to comment Share on other sites More sharing options...
marrtins Posted October 12, 2011 Report Share Posted October 12, 2011 Baisais jau nu tur overhead. It kā regexpiem nebūtu overheads. "Uz aci" tāpat nejūt. Quote Link to comment Share on other sites More sharing options...
nemakuphp Posted October 12, 2011 Report Share Posted October 12, 2011 Tev taču pēdējais links norāda pēdējo lapu, vismaz parasti tā ir, tā kā vari iegūt kopējo lapu skaitu un iet visām cauri, kā jau teicu. Quote Link to comment Share on other sites More sharing options...
Vecteevs Posted October 12, 2011 Author Report Share Posted October 12, 2011 okey, pamēģināšu :) Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.