Задавайте вопросы, мы ответим
Вы не зашли.
всем привет !!!
имеется вот такой код:
<?php
function open_page($url,$f=1,$c=2,$r=0,$a=0,$cf=0,$pd=""){
global $oldheader;
$url = str_replace("http://","",$url);
if (preg_match("#/#","$url")){
$page = $url;
$url = @explode("/",$url);
$url = $url[0];
$page = str_replace($url,"",$page);
if (!$page || $page == ""){
$page = "/";
}
$ip = gethostbyname($url);
}else{
$ip = gethostbyname($url);
$page = "/";
}
$open = fsockopen($ip, 80, $errno, $errstr, 60);
if ($pd){
$send = "POST $page HTTP/1.0\r\n";
}else{
$send = "GET $page HTTP/1.0\r\n";
}
$send .= "Host: $url\r\n";
if ($r){
$send .= "Referer: $r\r\n";
}else{
if ($_SERVER['HTTP_REFERER']){
$send .= "Referer: {$_SERVER['HTTP_REFERER']}\r\n";
}
}
if ($cf){
if (@file_exists($cf)){
$cookie = urldecode(@file_get_contents($cf));
if ($cookie){
$send .= "Cookie: $cookie\r\n";
$add = @fopen($cf,'w');
fwrite($add,"");
fclose($add);
}
}
}
$send .= "Accept-Language: en-us, en;q=0.50\r\n";
if ($a){
$send .= "User-Agent: $a\r\n";
}else{
$send .= "User-Agent: {$_SERVER['HTTP_USER_AGENT']}\r\n";
}
if ($pd){
$send .= "Content-Type: application/x-www-form-urlencoded\r\n";
$send .= "Content-Length: " .strlen($pd) ."\r\n\r\n";
$send .= $pd;
}else{
$send .= "Connection: Close\r\n\r\n";
}
fputs($open, $send);
while (!feof($open)) {
$return .= fgets($open, 4096);
}
fclose($open);
$return = @explode("\r\n\r\n",$return,2);
$header = $return[0];
if ($cf){
if (preg_match("/Set\-Cookie\: /i","$header")){
$cookie = @explode("Set-Cookie: ",$header,2);
$cookie = $cookie[1];
$cookie = explode("\r",$cookie);
$cookie = $cookie[0];
$cookie = str_replace("path=/","",$cookie[0]);
$add = @fopen($cf,'a');
fwrite($add,$cookie,strlen($read));
fclose($add);
}
}
if ($oldheader){
$header = "$oldheader<br /><br />\n$header";
}
$header = str_replace("\n","<br />",$header);
if ($return[1]){
$body = $return[1];
}else{
$body = "";
}
if ($c === 2){
if ($body){
$return = $body;
}else{
$return = $header;
}
}
if ($c === 1){
$return = $header;
}
if ($c === 3){
$return = "$body";
}
if ($f){
if (preg_match("/Location\","$header")){
$url = @explode("Location: ",$header);
$url = $url[1];
$url = @explode("\r",$url);
$url = $url[0];
$oldheader = str_replace("\r\n\r\n","",$header);
$l = "Location:";
$oldheader = str_replace("Location:",$l,$oldheader);
return open_page($url,$f,$c,$r,$a,$cf,$pd);
}else{
return $return;
}
}else{
return $return;
}
}
$url = "http://www.site.com";
$f = 1;
$c = 2;//1 for header, 2 for body, 3 for both
$r = NULL;
$a = NULL;
$cf = NULL;
$pd = NULL;
$page = open_page($url,$f,$c,$r,$a,$cf,$pd);
print $page;
?>
таким образом я вытягиваю страницу с сайта одного сайта ....
как мне вытащить нужный мне текст
и загнать в Б.Д. а потом с неё выбрать нужный мне текст ???
Неактивен
По-моему, Вы изобрели велосипед:
$data = file("http://www.example.com/");
если нужно совсем крутое, то
php.net/curl
В базу положить -
mysql_connect(...);
mysql_query ("insert into table values ('" . addslashes ($data) .')");
Неактивен
paulus написал:
По-моему, Вы изобрели велосипед:
$data = file("http://www.example.com/");
если нужно совсем крутое, то
php.net/curl
В базу положить -
mysql_connect(...);
mysql_query ("insert into table values ('" . addslashes ($data) .')");
спасибо !!!
но таким образом я ложу файл
целиком в Б.Д. а мне как - то надо
выбрать интересующий момент
текста и когда этот текст
обновляется на сайте, то
и у меня обновлялось в Б.Д.
для парсинг дело новое, поэтому
хочу понять сам процесс ...
Неактивен
Насколько Вы привязаны к PHP? Скрипты консольные для этой задачи - самое оно, как мне кажется
Неактивен
спасибо !!!
это хорошая идея, буду пробовать ...
Неактивен