Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

kingless

Google Define

Recommended Posts

Este script que criei vai buscar definições de palavras ao google... é uma ferramenta muito boa. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

 

Download:

http://www.kingless.net/download.php?filename=define.php

 

Source Code:

http://www.kingless.net/download.php?filen...fine.php;source

 

Demo:

http://www.kingless.net/define.php

 

<?php		///////////////////////////////////////////	   /////		 Google Define 		////// 	  ////  By kingless - blastelf@gmail.com //// 	 ///////////////////////////////////////////   	/// Este script vai buscar definições   ///    // de palavras ao google.   			//   ///////////////////////////////////////////$google = new google;$google->form( $_POST );$google->define( $_POST );class google {	var $lang = '';	var $num = '';	var $define = '';	function define( $post ) {				if(empty( $post['define'] )) {			die( '</body></html>' );		}		$this->define = $post['define'];		$this->lang = $post['lang'];		$this->num = empty( $post['num'] ) ? 1 : $post['num'];		$data = $this->getData();		if(empty( $data )) {			return false;		}		$defined = $this->parse_data( $data );		if(!$defined) {			$msg  = 'Não foi encontrada nenhuma definição para <b>'. $this->define .'</b>. <br />Sugestões:<blockquote>- Verifique que nenhuma palavra contém erros ortográficos.<br>- <a href="http://www.google.pt/search?hl=pt-PT&q='. $this->define .'"> procura na web </a>  por documentos que contêm <b>"'. $this->define .'"</b><br></blockquote></body></html>';			die( $msg );		}		echo $defined;	}	function parse_data( $data ) {				$define = explode( '<ul type="disc">', $data );				if(!empty( $define[1] )) {			$define = explode( '</ul>', $define[1] );						preg_match_all( '/<a href="(.*?)">/', $define[0], $links );						foreach( $links[1] as $link ) {				$pattern[] = "/". preg_quote( $link, '/'  ) ."/";				$replace[] = "http://www.google.pt". $link;			}						$define = preg_replace( $pattern, $replace, $define[0] );			$define = explode( '<p></p>', $define );			$defined = '';			for($x = 0; $x < $this->num; $x++ ) {				if(count( $define ) >= $this->num) {					$defined .= $define[$x].'<p></p>';				}			}			if(empty( $defined )) {				foreach( $define as $value ) {					$defined .= $value."<p></p>";				}			}			return $this->fix_string( $defined ).'</body></html>';		}		return false;	}	function fix_string ( $string ) {		$pattern = array( 'ã', 'á', 'à ', 'â', 'Â', 'À', 'Ã<81>', 'Ã', 'Ê', 'È', 'É', 'ê', 'é', 'è', 'Ã<8d>', 'ÃŒ', 'Ĩ', 'ÃŽ', 'í', 'ì', 'î', 'Ä©', 'ô', 'õ', 'ó', 'ò', 'ô', 'Ô', 'Õ', 'Ó', 'Ó', 'û', 'ú', 'Å©', 'ù', 'u', 'Û', 'Ú', 'Ù', 'Ũ', 'ç', 'Ç' );		$replace = array( 'ã', 'á', 'à', 'â', 'Â', 'À', 'Á', 'Ã', 'Ê', 'È', 'É', 'ê', 'é', 'è', 'Í', 'Ì', 'Ĩ', 'Î', 'í', 'ì', 'î', 'ĩ', 'ô', 'õ', 'ó', 'ò', 'ô', 'Ô', 'Õ', 'Ó', 'Ó', 'û', 'ú', 'ũ', 'ù', 'u', 'Û', 'Ú', 'Ù', 'Ũ', 'ç', 'Ç' );		return str_replace( $pattern, $replace, $string );	}	function getData () {		$fp = fsockopen( 'www.google.pt', 80, $errno, $errstr, 2 );		if(!$fp) {			die( "Não foi possivel conectar ao google $errno ($errstr)");		}		$header = 'GET /search?q=define%3A'. urlencode( $this->define ) .'&hl=pt-PT&oi=definel&defl='. $this->lang ." HTTP/1.1\r\n";		$header .= "Host: www.google.pt\r\n";		$header .= "User-Agent: {$_SERVER['HTTP_USER_AGENT']}\r\n";		$header .= "Referer: http://www.google.pt/webhp?hl=pt-PT&btnG=Pesquisar\r\n";		$header .= "Connection: close\r\n\r\n";		fwrite( $fp, $header );		$data = '';		while(!feof( $fp )) {			$data .= fgets( $fp, 4000 );		}		fclose( $fp );		return $data;	}	function form ( $value = '' )  {		$html[] = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">';		$html[] = '<html>';		$html[] = '<head>';		$html[] = '<title>Google Define criado por kingless - blastelf@gmail.com</title>';		$html[] = '<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />';		$html[] = '<meta name="keywords" content="google, define, google define, kingless, defined, php, php5" /> ';		$html[] = '<meta name="description" content="Script escrito em PHP que utiliza a funçao define do google para procurar por definições de plavavras" />';		$html[] = '<style type="text/css">';		$html[] = '#form { font-size: 0.9em; font-family: verdana, arial; margin-left: auto; margin-right: auto; }';		$html[] = '#definir { border: 1px solid silver; }';		$html[] = '.input { border: 1px solid silver; }';		$html[] = 'a:link, a:visited, a:hover, a:active { text-decoration: none; }';		$html[] = '</style>';		$html[] = '</head>';		$html[] = '<body>';		$define = empty( $value['define'] ) ? '' : $value['define'];		$num = empty( $value['num'] ) ? 1 : $value['num'];		$form[] = '<form action="" method="post">';		$form[] = '<table id="form"><tr><td>Definir:</td> <td><input class="input" type="text" name="define" value="'. $define .'" /></td></tr>';		$form[] = '<tr><td>Idioma:</td> <td><select class="input" name="lang">';		$form[] = '<option value="pt">Português</option>';		$form[] = '<option value="en">Inglês</option>';		$form[] = '<option value="es">Espanhol</option>';		$form[] = '<option value="fr">Francês</option>';		$form[] = '<option value="nl">Holandês</option>';		$form[] = '<option value="it">italiano</option>';		$form[] = '<option value="es">Espanhol</option>';		$form[] = '<option value="all">Todas as linguas</option>';		$form[] = '</select></td></tr>';		$form[] = '<tr><td># Resultados:</td> <td><input class="input" type="text" name="num" value="'. $num .'" /></td></tr>';		$form[] = '<tr> <td align="right" colspan="2"><input id="definir" type="submit" name="definir" value="definir" /></td></tr></table>';		$form[] = '</form> <br />';		echo implode( "\r\n", $html );		echo implode( "\r\n", $form );	}}?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.