Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   AC3 и парсинг (http://www.flasher.ru/forum/showthread.php?t=145551)

mamap 12.10.2010 10:33

AC3 и парсинг
 
Здравствуйте!
Заранее прошу прощения за свой глупый вопрос, я в ас3 полный ноль.
Хочу получить исходный код страницы с сайта, однако флеш загружает не все. Час бился в догадках и решил всё таки спросить.
Использовал URLLoader с кодом из тутора.
Код AS3:

import flash.events.MouseEvent;
import flash.display.Sprite;
import flash.events.Event;
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.xml.*;
import flash.events.IOErrorEvent;
 
var request:URLRequest = new URLRequest("http://bash.org.ru/quote/408292");
var loader:URLLoader = new URLLoader();
 
function URLLoader_loadExample(){
 
            loader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
            loader.addEventListener(Event.COMPLETE, loaderCompleteHandler);
 
                        loader.load(request);
}
 
function errorHandler(e:IOErrorEvent):void {
            t.text = "Had problem loading the XML File.";
        }
 
function loaderCompleteHandler(event:Event):void {
try {
t.text=loader.data;
t.scaleY=0.1;
                } catch (e:TypeError) {
                    trace("Could not parse the XML file.");
                }
        }
 
c.addEventListener(MouseEvent.MOUSE_DOWN, jmak);
 
function jmak(e:MouseEvent):void {
                URLLoader_loadExample();
}

Добавлено через 21 минуту
хотя я понял в чем проблема...
для некоторых сайтов требуются куки, а можно их как нибудь сымитировать?
п.с. и привести кирилицу в человеческий вид?

твитер блин...
есть ли лучше способы обойти эту бяку, чем использовать кэшированные страницы гуглопоиска?

wvxvw 12.10.2010 11:36

Загрузите что вам нужно в iframe и заберите от туда во флеш?

mamap 12.10.2010 12:36

спасибо за ответ
я так понял "забрать в iframe", - это создать хтмл, содержащий:
untilled.htm
Код:

<html>
        <iframe src="такой то сайт" name="iframe" width="1000" height="1000" scrolling="auto">
                ифрейм
        </iframe>

тогда, при забирании во флеш
var request:URLRequest = new URLRequest("...//untilled.htm");
он мне выдает код untilled.htm'а (надпись ифрем)
тут нужен другой объект, нежели урллоаддер или я что-то не так понял?

wvxvw 12.10.2010 17:24

Нет, не правильно поняли. Создать iframe можно как угодно. Получить его содержание - через ExternalInterface. Не нужен URLLoader, вы уже все загрузили.

leofit 12.10.2010 17:31

Гениально!

dimarik 12.10.2010 17:49

Напомните, пожалуйста, как получить содержание страницы через ExternalInterface?

gloomyBrain 12.10.2010 18:21

Цитата:

как получить содержание страницы через ExternalInterface?
Анонимная js-функция + dom-элемент + свойство innerHTML, нет?

dimarik 12.10.2010 18:38

Да, конечно.

mamap 12.10.2010 19:19

ничего не понял
Цитата:

я в ас3 полный ноль.
но всё равно спасибо!


Часовой пояс GMT +4, время: 05:39.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.