Навигация и очистка содержимого из флэш-веб-приложения - PullRequest
1 голос
/ 15 января 2010

Мне нужен инструмент, с помощью которого я могу указывать на флэш-сайт, перемещаться по нему и проверять содержимое на указанных страницах.

Не думаю, что смогу сделать это только с селеном, так как не могу настроить таргетинг на элементы во флэш-приложении через xpaths.

У кого-нибудь еще есть идеи?

Ответы [ 2 ]

2 голосов
/ 22 мая 2012

Что касается ответа TimScollick , то редко содержимое находится внутри SWF-файла. SWF-файлы обычно полны ActionScript. Вы не ожидаете найти список телефонных номеров в файле JavaScript.

Firebug может работать для определения конкретного контента, который вам нужен, но прокси на сайте с использованием чего-то вроде Charles Proxy или встроенного прокси-экрана screen-scraper может работать лучше.

Что касается навигации по сайту, вам может потребоваться настроить скребок так, чтобы он выполнял особые запросы, чтобы получить определенные значения, которые затем необходимо использовать в последующих запросах. Опять же, проксирование сайта не только потенциально покажет контент, который вам нужен, но также покажет вам, какие данные необходимы для правильных запросов и какие данные должны быть включены в эти запросы.

Работа с SWF-файлами может показаться черным ящиком, но вы можете попробовать декомпилировать различные SWF-файлы, используя showmycode.com или Elitma Trillix Flash Decompiler. Имейте в виду, что ActionScript - это в основном просто JavaScript. При необходимости может быть возможно поместить существующий AS в синтаксический анализатор JavaScript, чтобы повторить поведение, происходящее внутри одного из SWF-файлов. Экран-скребок имеет эту встроенную способность.

Если вы имеете дело с сайтом, где взаимодействие между клиентом (Flash-фильмом) и сервером облегчается с помощью AMF, тогда Charles - отличный выбор, поскольку у него есть встроенный десериализатор AMF (редкая вещь).

1 голос
/ 11 февраля 2011

Есть два способа сделать это. Если данные, которые вы ищете, находятся внутри SWF, вам нужно скачать SWF и извлечь данные с помощью декомпилятора.

Если данные являются внешними, вы можете использовать Firebug, чтобы увидеть вызовы и попытаться восстановить их.

...