Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|
Не могу разобраться с граббером. Помогите. |

29.06.2008, 00:37
|
|
Познавший АНТИЧАТ
Регистрация: 07.01.2007
Сообщений: 1,263
Провел на форуме: 3326855
Репутация:
702
|
|
Не могу разобраться с граббером. Помогите.
Написал граббер, вот код:
PHP код:
$file=file_get_contents('http://kit.simplyonline.org/barcelona/process.php?name=inlanger&number=5&kit=1');
preg_match_all("#<img src=\"../(.*?)\" />#is",$file,$file1);
$file=$file1[1][0];
echo "<img src=http://kit.simplyonline.org/".$file.">";
Но картинку он не выводит. Если просто перейти перейти по ссылке
Код:
http://kit.simplyonline.org/barcelona/process.php?name=inlanger&number=5&kit=1
и нажать на ссылку - Download Picture, то картинка скачается, а вот если взять ссылку на только что сгенерированную картинку, и попытаться открыть её в одтельном окне, то выдаст 403 ошибку...
Помогите советом 
|
|
|

29.06.2008, 01:02
|
|
Постоянный
Регистрация: 30.08.2007
Сообщений: 773
Провел на форуме: 3069349
Репутация:
808
|
|
Проверяется реферрер.
|
|
|

29.06.2008, 01:16
|
|
Познавший АНТИЧАТ
Регистрация: 07.01.2007
Сообщений: 1,263
Провел на форуме: 3326855
Репутация:
702
|
|
И как это обойти?
|
|
|

29.06.2008, 09:13
|
|
Познавший АНТИЧАТ
Регистрация: 02.06.2006
Сообщений: 1,188
Провел на форуме: 6023777
Репутация:
2642
|
|
Сообщение от inlanger
И как это обойти?
Посылаешь сокеты, там указываешь реф.
|
|
|

29.06.2008, 14:01
|
|
Познавший АНТИЧАТ
Регистрация: 07.01.2007
Сообщений: 1,263
Провел на форуме: 3326855
Репутация:
702
|
|
PHP код:
<?php
$fp = fsockopen('kit.simplyonline.org', 80);
if($fp)
{
fputs($fp, "POST http://kit.simplyonline.org/output/1214733118.png HTTP/1.0\nReferer: kit.simplyonline.org/barcelona/process.php\n\n");
echo '<pre>';
while(!feof($fp)) echo fgets($fp);
echo '</pre>';
fclose($fp);
}
?>
Не катит... Ответ - HTTP/1.1 403 Forbidden
http://sportmobile.net/futbolka/test.php
вот тут лежит мой скрипт...
|
|
|

29.06.2008, 15:30
|
|
Участник форума
Регистрация: 04.05.2006
Сообщений: 161
Провел на форуме: 389768
Репутация:
158
|
|
PHP код:
$file = file_get_contents('http://kit.simplyonline.org/barcelona/process.php?name=inlanger&number=5&kit=1');
preg_match_all("#<img src=\"../(.*?)\" />#is",$file,$matches);
$host = 'kit.simplyonline.org';
$sock = fsockopen($host, 80, $errno, $errstr, 5);
if(!$sock){
echo $errstr($errno);
}else{
$header = "GET /{$matches[1][0]} HTTP/1.1\r\n";
$header .= "Host: $host\r\n";
$header .= "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14\r\n";
$header .= "Keep-Alive: 300\r\n";
$header .= "Connection: keep-alive\r\n";
$header .= "Referer: http://kit.simplyonline.org/barcelona/process.php?name=inlanger&number=5&kit=1\r\n\r\n";
fwrite($sock, $header);
while(!feof($sock)){ $result .= fgets($sock, 1024); }
echo $result;
}
Он получает изображение, собственно дальше делай сним что хочеш.
|
|
|

29.06.2008, 15:33
|
|
Постоянный
Регистрация: 29.05.2007
Сообщений: 852
Провел на форуме: 4832771
Репутация:
1916
|
|
там просто адрес картинки динамический, никакого рефа там не нужно...
|
|
|

29.06.2008, 23:48
|
|
Познавший АНТИЧАТ
Регистрация: 07.01.2007
Сообщений: 1,263
Провел на форуме: 3326855
Репутация:
702
|
|
Как из этого картинку получить?
http://sportmobile.net/futbolka/test.php
|
|
|

30.06.2008, 00:32
|
|
Постоянный
Регистрация: 29.05.2007
Сообщений: 852
Провел на форуме: 4832771
Репутация:
1916
|
|
Сообщение от inlanger
Как из этого картинку получить?
http://sportmobile.net/futbolka/test.php
вот
PHP код:
<?php
$file = file_get_contents('http://sportmobile.net/futbolka/test.php');
$img = substr($file,strpos($file,"\r\n\r\n")+4);
header('Content-type: image/png');
echo $img;
?>
|
|
|

30.06.2008, 00:38
|
|
Постоянный
Регистрация: 13.10.2007
Сообщений: 347
Провел на форуме: 1345617
Репутация:
115
|
|
сделай вывод картинки вот так...
PHP код:
<?
$user_agent = "User_agent: Opera/9.50 (Windows NT 5.1; U; ru)\r\n";
$accept = "Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif,image/x-bitmap, */*;q=0.1\r\n";
$accept_language = "Accept-Language: ru, en;q=0.9\r\n";
$accept_charset = "Accept-Charset: utf-8;q=0.6 windows-1251;q=0.1 *;q=0.1\r\n";
$referer = "Referer: http://kit.simplyonline.org/output/\r\n";
$conection = "Connection: Close\r\n";
$host= "kit.simplyonline.org";
$path="output/".$_SERVER['QUERY_STRING'];
$fp=fsockopen($host,80,$errno, $errstr,10);
if(!$fp) {
echo "$errstr ($errno)<br/>\n";
} else {
$data = "";$post=0;
foreach($_POST as $key=>$value){$post=1;
$data.="&$key=$value";}
if($data)$data=substr($data,1);
if($post)
$headers = "POST $path HTTP/1.0\r\n";else
$headers = "GET $path HTTP/1.0\r\n";
$headers .= "Host: $host\r\n";
$headers .= "Accept: *\r\n";
$headers .= "Accept-Charset: UTF-8\r\n";
$headers .= "Accept-Charset: *\r\n";
$headers .= "Accept-Encoding: deflate\r\n";
$headers .= "Accept-Language: ru\r\n";
$headers .= "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; ru) Opera 9.50\r\n";
if($post){
$headers .= "Content-type: application/x-www-form-urlencoded\r\n";
$headers .= "Content-Length: ".strlen ($data)."\r\n";
$headers .= "\r\n";
$headers .= $data;}else $headers.="\r\n";
@fwrite($fp, $headers);
while($file != "\r\n") $file = @fgets($fp, 128);
$file = '';
while(!feof($fp)) $file .= @fgets($fp, 4096);
@fclose($fp); }
echo $file;
?>
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|