Verfasst: Mo 15. Jan 2007, 17:21
Bei Fremd-Skripten doch bitte immer die Quelle angeben. Danke!Butzemann hat geschrieben:Hab hier ein Script in Perl gefunden.
Forum für die Webseite von Dominik Erdmann
https://domi-cloud.de/board/
Bei Fremd-Skripten doch bitte immer die Quelle angeben. Danke!Butzemann hat geschrieben:Hab hier ein Script in Perl gefunden.
http://search.cpan.org/src/STEPANOV/IMD ... DB/Film.pmder-domi hat geschrieben:Bei Fremd-Skripten doch bitte immer die Quelle angeben. Danke!Butzemann hat geschrieben:Hab hier ein Script in Perl gefunden.
Code: Alles auswählen
var $url;
var $url2;
var $buf1;
var $buf2;
var $siteBuf;
var $siteBuf2;
...
function ofdbimport() {
if ( !strlen($_GET["importID"]) )
return -1;
$this->importID = $_GET['importID'];
// url to get search result
$this->url = ret_entities( $this->getLinkToDB( $this->importID ) );
// url to get actor details
$this->url2 = str_replace("film", "film_detail", $this->url);
...
// Schauspieler
if ( loadFile( $this->url2, $this->siteBuf2, "r" ) >= 0 ) {
$search = "<td nowrap><font face=\"Arial,Helvetica,sans-serif\" size=\"2\" class=\"Normal\">Darsteller:";
$search = "<b><i>Darsteller</i></b>";
$this->buf1 = explode( $search, $this->siteBuf2 );
$this->buf2 = explode( "</td><td><br> ", $this->buf1[1] );
$this->buf1 = explode( "</tr>\n</table>\n<br>\n", $this->buf2[0]);
$this->buf2[0] = str_replace("</a>", ";", $this->buf1[0]);
$this->buf2[0] = str_replace(" ", "", $this->buf2[0]);
$this->buf2[0] = strip_tags($this->buf2[0]);
$this->buf1 = explode ( ";", $this->buf2[0]);
$this->varToImport['actors'] = array();
for ( $i=1; $i<count($this->buf1); $i++ ) {
$this->varToImport['actors'][$i-1] = $this->buf1[$i-1];
}
}
Code: Alles auswählen
var $url;
var $url2;
var $buf1;
var $buf2;
var $siteBuf;
var $siteBuf2;
...
function ofdbimport() {
if ( !strlen($_GET["importID"]) )
return -1;
$this->importID = $_GET['importID'];
// url to get search result
$this->url = ret_entities( $this->getLinkToDB( $this->importID ) );
// url to get actor details
$this->url2 = str_replace("film", "film_detail", $this->url);
...
// Regisseure & Schauspieler
if ( loadFile( $this->url2, $this->siteBuf2, "r" ) >= 0 ) {
// Regisseure
$search = "<b><i>Regie</i></b>";
$this->buf1 = explode( $search, $this->siteBuf2 );
$this->buf2 = explode( "</td><td><br> ", $this->buf1[1] );
$this->buf1 = explode( "</tr>\n</table>\n<br>\n", $this->buf2[0]);
$this->buf2[0] = str_replace("</a>", ";", $this->buf1[0]);
$this->buf2[0] = str_replace(" ", "", $this->buf2[0]);
$this->buf2[0] = strip_tags($this->buf2[0]);
$this->buf1 = explode ( ";", $this->buf2[0]);
$this->varToImport['regisseure'] = array();
for ( $i=1; $i<count($this->buf1); $i++ ) {
$this->varToImport['regisseure'][$i-1] = $this->buf1[$i-1];
}
// Schauspieler
$search = "<b><i>Darsteller</i></b>";
$this->buf1 = explode( $search, $this->siteBuf2 );
$this->buf2 = explode( "</td><td><br> ", $this->buf1[1] );
$this->buf1 = explode( "</tr>\n</table>\n<br>\n", $this->buf2[0]);
$this->buf2[0] = str_replace("</a>", ";", $this->buf1[0]);
$this->buf2[0] = str_replace(" ", "", $this->buf2[0]);
$this->buf2[0] = strip_tags($this->buf2[0]);
$this->buf1 = explode ( ";", $this->buf2[0]);
$this->varToImport['actors'] = array();
for ( $i=1; $i<count($this->buf1); $i++ ) {
$this->varToImport['actors'][$i-1] = $this->buf1[$i-1];
}
}
Super! Das ist sehr hilfreich. Es ist wirklich nervig, dass das Layout ständig geändert wird. Die entsprechenden Änderungen sind alles andere als trivial. Ich muß mich jedesmal neu einarbeiten.Butzemann hat geschrieben:Ein kleiner Tip (an den domi). Es wäre denkbar auf das alte Design der IMDB zurückzugreifen, welches unter http://former.imdb.com zu erreichen ist.
Code: Alles auswählen
-Umgebung, um Quellcode zu posten. Das verbessert deutlich die Lesbarkeit
Code: Alles auswählen
// Regisseure
$search = "<h5>Regisseur:</h5>";
$this->buf1 = explode( $search, $this->siteBuf );
$this->buf2 = explode( '</div>', $this->buf1[1] );
$search = '/">';
$this->buf1 = explode( $search, $this->buf2[0] );
$this->varToImport['regisseure'] = array();
for ( $i=1; $i<count($this->buf1); ++$i ) {
$this->buf2 = explode( '</a>', $this->buf1[$i] );
$this->varToImport['regisseure'][$i-1] = htmlentities( urldecode( $this->buf2[0] ) );
}