Ir para conteúdo

POWERED BY:

Arquivado

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

FVIEIRAS

Script de Notícias de terceiros no Flash

Recommended Posts

Amigos, estou tentando e não estou conseguindo fazer.

 

Preciso que tenha em um site todo em flash notícias em tempo real que está vindo de um site.

 

O site já disponibiliza o script, que é o seguinte:

 

<!--Começa aqui noticias Mundo News--><script language="javascript" type="text/javascript" src="http://www.mundonews.com.br/restrito/selos/geral.js.php"></script><!--Termina aqui noticias Mundo News-->

 

 

Como faço para colocar isso no flash?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo.

 

Pelo o que me parece isso é apenas Java Script no caso, creio que o ideal seria você buscar as noticias por meio de RSS lendo arquivos XML.

 

Estou desenvolvendo um script com ajuda do pessoal do fórum se quiser posso te passar.

 

Abs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então, não sei exatamente como devo fazer...

 

A única coisa que quero é que no meu SWF, tenha uma área que apareça o conteúdo do link que passei.

 

Se puder me passar para eu ver se dá para adaptar eu agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom amigo, pelo o que eu vi no site deles eles disponibilizam esse script apenas em Java Script que devem ser inserido de forma direta no html.

Pode ser que através de alguma função no Flash você consiga puxar os valores desse scrpit (Peço desculpas mas eu desconheço como fazer isso).

 

Se você puder obter a informação de outro portal segue o script para que você possa adaptar suas necessidades.

 

//Obtendo informações das Notícias
//--------------------------------

//Habilita o sistema de caracters especial
System.useCodepage = true;

//Cria uma nova variável para o XML
var news:XML = new XML();

//Carrega o XML e seu link.
news.load("http://g1.globo.com/Rss2/0,,AS0-5602,00.xml");

//Função para atualizar o RSS (30s)
function callback(){
	news.load("http://g1.globo.com/Rss2/0,,AS0-5602,00.xml");
}
setInterval(callback, 30000);

//Ignora possíveis espaços em branco.
news.ignoreWhite = true;

// Depois de carregar, exibi o conteúdo do XML
news.onLoad = function(success) {
	
//Carregando dados do XML
//-----------------------

//Puxa o tema
tema.html = true;
tema.htmlText = (news.firstChild.firstChild.childNodes[7].childNodes[0].childNodes[0].nodeValue); 

//Puxa o titulo
titulo.html = true;
titulo.htmlText  = (news.firstChild.firstChild.childNodes[7].childNodes[1].childNodes[0].nodeValue);

//Puxa a notícia
noticia.html = true;
noticia.htmlText  = (news.firstChild.firstChild.childNodes[7].childNodes[3].childNodes[0].nodeValue);
  
};

Dai você cria 3 caixas de texto dinâmica com e os configura como multi-line e os instância como: tema, titulo, noticia.

Ainda não está 100% o código mas essa parte já está funcionando. Dai é só ajustar os valores dos nós para poder pegar as notícias que

desejar.

 

Se tiver dúvidas da uma lida no tópico ao qual o Eder está me ajudando...

 

http://forum.imasters.com.br/index.php?/topic/386649-dificuldade-em-receber-valores-de-xml-no-flash/

 

Abs

Compartilhar este post


Link para o post
Compartilhar em outros sites

É, realmente preciso que seja em HTML, vou esperar alguém me dizer aqui se tem algum código no flash, pois as notícias tem que ser desse site e eles somente disponibilizam o script como eu passei.

 

Alguém aí sabe como fazer isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha não sei se vai te ajudar, mas alguns anos atrás tive o mesmo problema e a solução que encontrei foi colocar uma DIV com esse conteúdo HTML/JavaScript sobre o swf, Deixei reservado no layout do swf o espaço e posicionei esta DIV de notícias com CSS - Isso funciona no caso de um swf com tamanho e posição fixa, no caso de layout líquido, já complica... talvez essa solução pode te ajudar caso realmente não possa fazer com XML ou algum script server-side.

 

Att.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha fiz aqui um código rapidinho para reconhecer as funções. (AS3)

 

package {
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.net.URLRequest;
	import flash.net.URLStream;

	public class ForunsTest extends Sprite
	{
		public function ForunsTest()
		{
			var req:URLRequest = new URLRequest('http://www.mundonews.com.br/restrito/selos/geral.js.php'); // Requisição
			var urlloader:URLStream = new URLStream(); // Objeto que puxa o JavaScript.
			urlloader.addEventListener(Event.COMPLETE, this.urlLoaderCompleteHandler); // Função que é chamada ao terminar de carregar.
			urlloader.load(req); // Manda carregar
		}

		protected function urlLoaderCompleteHandler(e:Event):void
		{
			var urlloader:URLStream = URLStream(e.target);
			urlloader.removeEventListener(Event.COMPLETE, this.urlLoaderCompleteHandler); // Para o garbage poder coletar o URLStream
			var buffer:String = urlloader.readUTFBytes(urlloader.bytesAvailable); // Extrai o código baixado para um string
			var r:RegExp = new RegExp("([0-9]{2}:[0-9]{2}) - <a href=\\\\'([^\\\\]+)\\\\' target=\\\\'_blank\\\\'>([^<]+)</a>", 'g'); // Expressão regular que reconhece as notícias
			var founds:Object = r.exec(buffer); 
			while (founds != null) { // Enquanto ainda existir notícia
				// founds[1] é o hora
				// founds[2] é o título
				// founds[3] é o link
				trace('Notícia:', founds[3], 'ocorrida às', founds[1], ' no endereço', founds[2]);
				founds = r.exec(buffer);
			}
		}
	}
}

Flw brother.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu pela ajuda J Santos, mas não estou conseguindo usar seu código.

 

Eu copiei o que mandou e colei no código do Flash, porém ao rodar apresenta erros.

 

Segue abaixo os erros. O que pode estar errado ou eu precise fazer algo mais:

 

 

**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 1: Syntax error.

package {

 

**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 6: Attribute used outside class.

public class ForunsTest extends Sprite

 

**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 7: The class or interface 'flash.display.Sprite' could not be loaded.

{

 

**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 10: The class or interface 'flash.net.URLRequest' could not be loaded.

var req:URLRequest = new URLRequest('http://www.mundonews.com.br/restrito/selos/geral.js.php'); // Requisição

 

**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 11: The class or interface 'flash.net.URLStream' could not be loaded.

var urlloader:URLStream = new URLStream(); // Objeto que puxa o Javascript.

 

**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 15: Syntax error.

protected function urlLoaderCompleteHandler(e:Event):void

 

**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 17: The class or interface 'flash.net.URLStream' could not be loaded.

var urlloader:URLStream = URLStream(e.target);

 

**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 20: The class or interface 'RegExp' could not be loaded.

var r:RegExp = new RegExp("([0-9]{2}:[0-9]{2}) - <a href=\\\\'([^\\\\]+)\\\\' target=\\\\'_blank\\\\'>([^<]+)</a>", 'g'); // Expressão regular que reconhece as notícias

 

**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 26: Wrong number of parameters; trace requires exactly 1.

trace('Notícia:', founds[3], 'ocorrida às', founds[1], ' no endereço', founds[2]);

 

**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 15: This statement is not permitted in a class definition.

protected function urlLoaderCompleteHandler(e:Event):void

 

Total ActionScript Errors: 10 Reported Errors: 10

 

Alguém pode me ajudar com esse problema?

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.