[NetBehaviour] Art Blog links at Furtherfield.org
ARN
info at x-arn.org
Fri Aug 18 00:20:02 CEST 2006
marc wrote:
> this by the way 'http://poietic-aggregator.com/ap/Furtherfield' is
> beautiful...
thanks,
your blogs list is a great source for materials, so now this one:
http://yann.x-arn.org/getfeed/4.php
generates a juxtaposition with 4 pictures found in blogs from the list
sometimes funny, sometimes a bit slow (everything in 'real time' accross the
net)... in progress...
the raw script below , for PHP addicts :)
++
<pre>
<?php
//extrait la liste de blogs et la met dans un tableau
$url_tab = array();
if ($a =
@fopen("http://www.furtherfield.org/displaylinks.php?link_set=11","r")) {
while( $line = fgets($a, 1024) ) {
if ( preg_match("`gotowork\('(.*)'\)`", $line, $t) ) {
$url_tab[] = $t[1];
}
}
fclose($a);
print_r($url_tab);
} else {
echo "global failure";
exit;
}
//tableau des url d'images sources
$imsrc = array();
function getImg($url, $limit) {
global $imsrc;
$pattern='/<(input|img)[^>]*src=([\\"\\\']?)(http[^>
]*\.(jpg|jpeg))([\\"\\\']?) [^>]*>/i';
if( $f = @fopen($url, 'r') ) {
$n=0;
while( $line = fgets($f, 1024) ) {
if(preg_match($pattern, $line, $images) && $n < $limit) {
print_r($images[3]);
echo "\n";
$n++;
$imsrc[] = $images[3];
}
}
fclose($f);
if( $n == $limit) {
echo "success\n\n";
return true;
} else {
echo "failure (no jpg)\n\n";
return false;
}
} else {
echo "failure (can't open URL)\n\n";
return false;
}
}
//nombre d'urls de blogs
$nb = count($url_tab);
function chooseUrl() {
global $url_tab, $nb;
$u = rand(0,$nb);//determine 1 url au pif dans la liste
$url = $url_tab[$u];
echo "checking: $url\n";
if( !getImg($url,1) ) {//Et va chercher la premiere image
chooseUrl();
} else {
return true;
}
}
for($i=0; $i<4; $i++) {
//echo "\n<!-- loop: $i -->\n";
chooseUrl();
}
print_r($imsrc);
$im = imagecreatetruecolor (640, 480);
for($j=0; $j<count($imsrc); $j++) {
if($info = @getimagesize($imsrc[$j])) {
$im_w = $info[0];
$im_h = $info[1];
$ims = imagecreatefromjpeg($imsrc[$j]);
$imtemp = imagecreatetruecolor (320, 240);
imagecopyresampled ($imtemp, $ims, 0, 0, 0, 0, 320, 240, $im_w, $im_h);
if($j==0) {
$x=0;
$y=0;
} else if($j==1) {
$x=320;
$y=0;
} else if($j==2) {
$x=0;
$y=240;
} else if($j==3) {
$x=320;
$y=240;
}
imagecopy($im, $imtemp, $x, $y, 0, 0, 320, 240);
imagedestroy($imtemp);
imagedestroy($ims);
} else {
echo "failure : can't open ".$imsrc[$j]."\n";
}
}
imagejpeg($im, 'test.jpg');
imagedestroy($im);
?>
<img src="test.jpg">
</pre>
--
More information about the NetBehaviour
mailing list