Απόσπασμα σελίδας

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
kstampo
Δημοσιεύσεις: 8
Εγγραφή: 21 Αύγ 2005 11:43

Απόσπασμα σελίδας

Δημοσίευση από kstampo » 28 Αύγ 2005 01:16

Γεια χαρά...

Είμαι καινούριος στην php και θα ήθελα να μάθω εάν υπάρχει τρόπος να απεικονίζω τμήμα μίας ιστοσελίδας (εξωτερικό link) από κάποιο σημείο του κώδικα π.χ. από το σχόλιο <!--*****εδώ αρχίζει ο χρήσιμος κώδικας -->
μέχρι το αντίστοιχο σχόλιο τέλους <!-- **** εδώ τελειώνει ο χρήσιμος κώδικας-->.

Σημ. ο host μου ΔΕΝ έχει ενεργποιημένη την curl function...

Καμμιά ιδέα?

Κώστας. :lol:

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

Απόσπασμα σελίδας

Δημοσίευση από Rapid-eraser » 28 Αύγ 2005 01:23

av exeis evergopimeva ta file wrapers gia remote arxeia kai protokolo http tote mporeis va exeis prosbasi
sta remote dedomeva me oles tis functions arxeiov

file , fopen , readfile

kai gevika oti exei sxesi me file streams.

twra n logiki gia afto to script leei

kaveis to fetch apo to remote arxeio kai stnv sivexeia
skavareis to keimevo sou mexri va evtopiseis
ta sigkekrimeva parts mou 8eleis .

malista apo tnv stigmi pou ksereis ti akribos psaxveis
dev xriazete va mplekseis me kapoio periergo regular expresion.
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6230
Εγγραφή: 30 Νοέμ 2004 03:09

Απόσπασμα σελίδας

Δημοσίευση από fafos » 28 Αύγ 2005 16:36

Katarxas na toniso oti to na pairneis stoixeia apo allh istoselida einai paranomo efoson den exeis thn aparaithth adeia.
Kata deyteron auto pou prokeite na "daneisteis" tha prepei na einai stathero os pros ta tags..
Parakato exo ton kodika enos extreme fetch to opoio sou dinei thn dynatothta na afereis apo to keimeno pou "daneizese" ;oti den sou einai aparaithto (tags, keimeno, links klp)..

Κώδικας: Επιλογή όλων

<?
//Εδώ γράφεις το url από όπου θα παίρνεις το περιεχόμενο
$theLocation="http&#58;//www.alltheweb.com/search?cat=web&q=fresh+content&phrase=on&h=50";
//Εδώ γράφεις το url χωρίς την σελιδα το οποίο θα χρησιμεύσει όταν θες να απομονώσεις γραφικά links κλπ
$baseURL="http&#58;//www.alltheweb.com"; 


//Μην πειράζεις το παρακάτω
preg_match&#40;"/^&#40;https?&#58;\/\/&#41;?&#40;&#91;^\/&#93;*&#41;&#40;.*&#41;/i", "$theLocation", $matches&#41;;
$theDomain = "http&#58;//" . $matches&#91;2&#93;;
$page = $matches&#91;3&#93;;

$fd = fopen&#40;$theDomain.$page, "r"&#41;;
$value = "";
while&#40;!feof&#40;$fd&#41;&#41;&#123;
	$value .= fread&#40;$fd, 4096&#41;;	
&#125;
fclose&#40;$fd&#41;;

//Εδώ γράφεις τα tags απο κει που θα ξεκινά το fetch
//Σημειωση&#58; αν σε αυτά τα tags έχει εισαγωγικά &#40;"&#41; πρεπει να τα απομονώνεις με το ανάποδο slash &#40;\&#41;
//π.χ <img src=\"images/something.jpg\">
$start= strpos&#40;$value, "<td valign=top>&nbsp;1.&nbsp;&nbsp;</td>"&#41;;  


//Εδώ γράφεις τα tags απο κει που θα τελειώνει το fetch
$finish= strpos&#40;$value, "<span class=rh>Results&#58;</span></b>&nbsp;&nbsp;"&#41;;  
$length= $finish-$start;
$value=substr&#40;$value, $start, $length&#41;;

// Με τις παρακάτω εντολές αφαιρείς tags από το περιεχόμενο που παίρνεις
// Όποια δεν θες της βαζεις 2 slash μπροστά
$value = eregi_replace&#40; "<img src=&#91;^>&#93;*>", "", $value &#41;;   // Αφαιρεί τα image tags.
$value = eregi_replace&#40; "<IMG alt=&#91;^>&#93;*>", "", $value &#41;;   // Αφαιρεί τα image alt tags
$value = eregi_replace&#40; "<class&#91;^>&#93;*>", "", $value &#41;; // Αφαιρεί τα  variations από τα <class> tags.
$value = eregi_replace&#40; "</font>", "", $value &#41;; // Αφαιρεί το κλείσιμο  </font> tags.
$value = eregi_replace&#40; "<tr&#91;^>&#93;*>", "", $value &#41;; //Αφαιρεί τα  <tr> tags μαζί με τα <br>.
$value = eregi_replace&#40; "<td&#91;^>&#93;*>", "", $value &#41;; // Αφαιρεί τα  <td> tags.
$value = eregi_replace&#40; "<table&#91;^>&#93;*>", "", $value &#41;; // Αφαιρεί τα  <table> tags.
$value = eregi_replace&#40; "</table>", "", $value &#41;; // Αφαιρεί το κλείσιμο των  </table> tags.
$value = eregi_replace&#40; "</tr>", "", $value &#41;;  // Αφαιρεί το κλείσιμο των </tr> tags.
$value = eregi_replace&#40; "</td>", "", $value &#41;; // Αφαιρεί το κλείσιμο των </td> tags.
$value = eregi_replace&#40; "<center>", "", $value &#41;; // Αφαιρεί τα <center> tag...
$value = eregi_replace&#40; "</center>", "", $value &#41;; // Αφαιρεί το κλείσιμο των <center> tag...
$value = eregi_replace&#40; "<b>", "", $value &#41;; // Αφαιρεί τα <b> tags.
$value = eregi_replace&#40; "</b>", "", $value &#41;; // Αφαιρεί το κλείσιμο των </b> tags...
//$value = eregi_replace&#40; "κείμενο", "", $value &#41;; //Αφαιρεί κάποιο κομμάτι κειμένου
//$value = eregi_replace&#40; "<javascript&#91;^>&#93;*>", "", $value &#41;; //Αφαιρεί τα javascripts
//$value = eregi_replace&#40; "<script&#91;^>&#93;*>", "", $value &#41;; //Αφαιρεί τα scripts

// Αφαιρεί τα links και τα αφήνει ως απλό κείμενο
$value = eregi_replace&#40; "href=", "target=\"_blank\" href=", $value &#41;; 

//Το παρακάτω δεν το πειράζουμε
$FinalOutput = preg_replace&#40;"/&#40;href=\"?&#41;&#40;\/&#91;^\"\/&#93;+&#41;/", "\\1" . $theDomain . "\\2", $value&#41;;
echo "<base href=\"$baseURL\">"; 

echo $FinalOutput; 

flush &#40;&#41;; 

?>

kstampo
Δημοσιεύσεις: 8
Εγγραφή: 21 Αύγ 2005 11:43

Απόσπασμα σελίδας

Δημοσίευση από kstampo » 28 Αύγ 2005 20:08

Καταρχήν να σας ευχαριστήσω για την απάντησή σας...

Τελικά "έπαιξα" με τις εντολές file δηλ.

$lines= file('http://χχχχ.χχχ.χχ');

foreach ($lines as $line_num => $line) {
if ($line_num>=χχχχ and $line_num<=ψψψ)
{
$periexomeno.=$line;
}

}
echo $periexomeno;

ακολουθόντας τη συμβουλή του Rapid-Eraser και με δεδομένο ότι η αρίθμηση γραμμών θα παραμείνει ως έχει στο source page.

ενδιαφέρουσα όμως και η ανάλυση του fafos την οποία θα δοκιμάσω...

ΥΓ. Υπάρχει συγκατάθεση για την αναπαραγωγή τμήματος της ιστοσελίδας....

Σας ευχαριστώ για τις απαντήσεις σας!!

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες