Всичко за парите от интернет |
Регистрирайте се и ще получите ценни съвети и начини да печелите от Интернет. Напълно безплатно е,и отнема 2 минути!И ако намирате форума за полезен моля гласувайте за нас БГТОП |
Всичко за парите от интернет |
Регистрирайте се и ще получите ценни съвети и начини да печелите от Интернет. Напълно безплатно е,и отнема 2 минути!И ако намирате форума за полезен моля гласувайте за нас БГТОП |
Всичко за парите от интернет |
Would you like to react to this message? Create an account in a few clicks or log in to continue. |
|
',$html); # всичко след затварящ таг body се изтрива (ако има таг)
$aBlockTags = array('form','noscript','script','style','object');
foreach($aBlockTags as $blockTag){
$html = preg_replace('|<'.$blockTag.'(.*?)'.$blockTag.'>|si','',$html); # изчистване на някои блокови тагове, между които не се очаква да има текст
}
#$aSpecialDivs = array('header','head','top','menu','menuBar','footer','foot');
$text = strip_tags($html); # премахва тагове
$text = html_entity_decode($text); # превръща HTML спец. символи в съответните знаци. Напр. < става < и " става "
print $text;
exit;
/**
* Извличане на съдържанието на уеб страница
* @param string $url - адрес на уеб страница, от която се извлича текст
* @param int $CURLOPT_CONNECTTIMEOUT optional - максимално изчакване за свързване в сек.
* @param int $CURLOPT_TIMEOUT optional - време за цялостна обработка в сек.
* @return string - целият HTML документ на страницата
**/
function get_page_content($url, $CURLOPT_CONNECTTIMEOUT=10, $CURLOPT_TIMEOUT=20){
$ch = curl_init ();
@curl_setopt($ch, CURLOPT_URL, $url);
@curl_setopt($ch, CURLOPT_HEADER, false); /* без HTTP headers */
@curl_setopt ( $ch, CURLOPT_CONNECTTIMEOUT, $CURLOPT_CONNECTTIMEOUT ); /* време за свързване */
@curl_setopt ( $ch, CURLOPT_TIMEOUT, $CURLOPT_TIMEOUT ); /* общо време за изпълнение */
@curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, true );
@curl_setopt ( $ch, CURLOPT_FOLLOWLOCATION, true );
@curl_setopt ( $ch, CURLOPT_USERAGENT, $_SERVER ['HTTP_USER_AGENT'] );
$data = curl_exec ( $ch );
curl_close($ch);
return $data;
}В сегашния си вид скрипта извлича всички текстове между body таговете, като премахва CSS, Javascript и някои блокови тагове заедно с кода между тях. Текстовете от хедъра, футъра и менюто остават.
След като извлече текста този скрипт просто го отпечатва на екрана, но ти можеш да направиш и други неща с него.
Все пак добре помисли какво ще правиш с него! Възможно е текста да е защитен от Закон за авторското право и сродните му права и да нямаш право да го публикуваш без разрешението на автора.
Напомням ти още веднъж, че ако вземаш текст от друг сайт и го показваш в твои сайт е задължително да поставиш реален линк към източника. В противен случай е много вероятно да получиш наказание от Гугъл за дублирано съдържание и сайта ти да падне назад в резултатите на Гугъл.
Кодът е тестван и работи. За всякакви идеи за подобрение и забележки, пиши коментари по публикацията.
PHP: Извличане текст от интернет страница |
|