Как отсканить книгу из флэша?
Ну и это, ссылочку посмотреть было бы интересно, может там все совсем элементарно.
/data/issues/issue_1031641/thumb/img-000029.jpg?key=4e8514afc4c27be36fbcd5b8d3f42b90
/data/issues/issue_1031641/pages/1280/img-000028.jpg?key=c2d192e93ae330a37411da46413d2960
значение кей каждый раз разное, но
wget http://www.readoz.com/data/issues/issue_1031641/thumb/img-000029.jpg
жипег у меня сохранило.
ну да, thumb-ы он отдает и без key, а pages - не отдает, похоже
точняк. как-то не проверил. ну тогда я бы предложил самый простой способ: перехватывать траффик от этого сервера и складывать картинки в папочку. он идёт не шифрованный вроде.
неа, блин, не получилось, не тот текст вытащил (
но оно всё таскает такими запросами: /data/issues/issue_1031641/thumb/img-000029.jpg?key=4e8514afc4c27be36fbcd5b8d3f42b90/data/issues/issue_1031641/pages/1280/img-000028.jpg?key=c2d192e93ae330a37411da46413d2960значение кей каждый раз разное, но code:wget http://www.readoz.com/data/issues/issue_1031641/thumb/img-00... у меня сохранило.а можно, так сказать, для собственного развития поинтересоваться - где вы адреса с ключами разыскали?
где вы адреса с ключами разыскали?из простого: в Firefox ставится плагин FireBug, и при открытии данной флэшки смотрится страница Сеть в Firebug-е.
зы
в других браузерах есть свои аналоги Firebug-а
а из кеша браузера не легче вытащить?
для этого прощёлкать надо руками все странички и подождать пока загрузится. вон ТС хочет автотыкалку делать как я понял.
ну её наверно в любом случае придётся протыкать, если не разбирать флэш и не узнавать как он ключик генерит. но автотыкалку тут сделать просто. берёшь autoit под винду или моего чё-то-там-не-помню как зовётся и кликаешь с секундным интервалом на автомате.
а из кеша браузера не легче вытащить?я не доверяю кэшу браузера. он то кэширует то не кэширует, сам удаляет, переименовывает. нафиг надо?
а можно, так сказать, для собственного развития поинтересоваться - где вы адреса с ключами разыскали?я тупо запустил wireshark и листнул страницу.
ngrep -q -d eth0 'pages/1280' | grep -aEo "http.*key=[a-f0-9]+"
в пределах одного браузера и ip-адреса ключи не меняются (кстати, ключ - это похоже md5 хеш, только вот чего? но все-равно не качает. Что-то мне подсказывает, что надо рефер поставить и куки. Проверил только с рефером - не качает, 403 отдает, надо ещё с куки попробовать.
забил и написал тыкалку на autohotkey (скрипт даже где-то сохранился)
точно не помню, но вроде год назад swf просмотровщик поддавался декомпиляции, если так и осталось, то можно реверснуть алгоритм генерации ключа
держи. Только ключи сам убирай, мне влом
если кому интересно, выкачивал примерно так
b - файлик со ссылками
выкачал, если кому интересно, выкачивал примерно так
wget --referer http://www.readoz.com/reader/book_mod1.swf --no-cookies --header 'Cookie: i1031641="5CEDEF6F22CD821243589CFED78EE0F1,8"; JSESSIONID=2F8C7B7E4F4ED35E1864A18FAB716A89' -i b
b - файлик со ссылками
О, слушай, круто! А можешь подробнее расписать алгоритм - откуда брать линки, куки, и как генерить файл b?
ngrep -q -d eth0 'pages/1280' | grep -aEo "http.*key=[a-f0-9]+" > b
Если ngrep запустить без "| grep -aEo "http.*key=[a-f0-9]+" > b" то можно увидеть куки. Вытаскиваем оттуда куки и качаем вгетом
wget --referer http://www.readoz.com/reader/book_mod1.swf --no-cookies --header 'Cookie: i1031641="5CEDEF6F22CD821243589CFED78EE0F1,8"; JSESSIONID=2F8C7B7E4F4ED35E1864A18FAB716A89' -i b
как-то так
То есть все равно придется всю книгу пролистывать?
AutoIt тебе в помощь.
C:\Temp\wget>wget --referer http://www.readoz.com/reader/book_mod1.swf --load-co
okies cookies.txt -i b.txt -d
SYSTEM_WGETRC = c:/progra~1/wget/etc/wgetrc
syswgetrc = c:/progra~1/wget/etc/wgetrc
DEBUG output created by Wget 1.11.4 on Windows-MinGW.
Loaded b.txt (size 110).
Stored cookie www.readoz.com -1 (ANY) /data/issues/issue_1031641 <session> <inse
cure> [expiry none] i1031641 "5CEDEF6F22CD821243589CFED78EE0F1,8"
Stored cookie www.readoz.com -1 (ANY) / <session> <insecure> [expiry none] JSESS
IONID 2F8C7B7E4F4ED35E1864A18FAB716A89
--2011-06-08 11:37:45-- http://www.readoz.com/data/issues/issue_1031641/pages/1
280/img-000028.jpg?key=c2d192e93ae330a37411da46413d2960
Resolving www.readoz.com... seconds 0,00, 216.87.176.205
Caching www.readoz.com => 216.87.176.205
Connecting to www.readoz.com|216.87.176.205|:80... seconds 0,00, connected.
Created socket 1052.
Releasing 0x009bedb0 (new refcount 1).
---request begin---
GET /data/issues/issue_1031641/pages/1280/img-000028.jpg?key=c2d192e93ae330a3741
1da46413d2960 HTTP/1.0
Referer: http://www.readoz.com/reader/book_mod1.swf
User-Agent: Wget/1.11.4
Accept: */*
Host: www.readoz.com
Connection: Keep-Alive
Cookie: i1031641="5CEDEF6F22CD821243589CFED78EE0F1,8"; JSESSIONID=2F8C7B7E4F4ED3
5E1864A18FAB716A89
---request end---
HTTP request sent, awaiting response...
---response begin---
HTTP/1.1 403 Forbidden
Via: 1.1 MSK-KLTN-TMG003
Connection: Keep-Alive
Proxy-Connection: Keep-Alive
Content-Length: 964
Date: Wed, 08 Jun 2011 07:37:54 GMT
Content-Type: text/html;charset=utf-8
Server: Apache-Coyote/1.1
---response end---
403 Forbidden
Registered socket 1052 for persistent reuse.
Skipping 964 bytes of body: [<html><head><title>Apache Tomcat/6.0.20 - Error rep
ort</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;backgr
ound-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;colo
r:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,s
ans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-famil
y:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Ta
homa,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Taho
ma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : blac
k;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>HTTP
Status 403 - </h1><HR size="1" noshade="noshade"><p><b>type</b> Status report</
p><p><b>message</b> <u></u></p><p><b>description</b> <u>Access to the specified
resource has been forbidden.</u></p><HR size="1" noshade="noshade"><h3>Apache
Tomcat/6.0.20</h3></body></html>] done.
2011-06-08 11:37:46 ERROR 403: Forbidden.
b.txt:
http://www.readoz.com/data/issues/issue_1031641/pages/1280/img-000028.jpg?key=c2d192e93ae330a37411da46413d2960
cookies.txt:
# Cookies for domains related to readoz.com.
# This content may be pasted into a cookies.txt file and used by wget
# Example: wget -x --load-cookies cookies.txt http://www.readoz.com/reader/book_mod1.swf
#
www.readoz.com FALSE /data/issues/issue_1031641 FALSE 0 i1031641 "5CEDEF6F22CD821243589CFED78EE0F1,8"
www.readoz.com FALSE / FALSE 0 JSESSIONID
2F8C7B7E4F4ED35E1864A18FAB716A89
В чем может быть проблема?
дай угадаю - ты тупо скопировал куки 'а?
В данном случае да, но я ставил и те, которые сам попробовал достать - результат такой же. Кстати, как их вообще достать можно?
Мой совет: не сношай мозг под виндой, загрузись с лайфцд убунты, например, установи ngrep (sudo apt-get install ngrep) и сделай то, что я написал выше, проблем возникнуть не должно.
Ага, и это называется не сношать мозг? С ключами я разобрался, мне осталось только понять как куки вытаскивать, вот и все
для целей "перехватить/подсмотреть трафик", "написать простенький скрипт", "отфильтровать текст по регулярным выражениям" использовать линукс - это и есть "не сношать мозг".
А для целей скачать книжку ставить никс - это сношать мозг
Поскольку готового софта нет, и надо писать свой, то линукс однозначно предпочтительнее. Там проще работать с сетью, есть много приложений-кирпичиков, а если ты хочешь в проге заюзать либу, ты её ставишь из пакетного менеджера, а не посредством рукоблудия
с каких пор предложение загрузиться с liveCD приравнивается к установки ОС?
ставить никсдостаточно cygwin
сомневаюсь что под cygwin нормально будет работать ngrep. И wireshark помнится на винде работал неидеально, на libpcap ругался чего-то.
С каких пор предложение загрузиться с liveCD приравнивается к установки ОС?
Действительно с LiveCD, надо будет еще в магазин за носителем переться!
Друзья! Не хочется в этой теме спорить, какая ОС лучше. Просто скажите, как достать куки по кросс-ссылке из флэша (желательно из Windows, но можно и под Unix буду очень признателен!
Действительно с LiveCD, надо будет еще в магазин за носителем переться!скачиваешь VirtualBox, грузишься с iso. Какой еще носитель?
каждая ось хороша в своей нише. не нужно бояться линукса и придумывать отмазки почему его невозможно использовать тебе лично в данной ситуации. нужно один раз попробовать и увидеть что в этом нет ничего страшного. тем более если программист - не должен пугаться.
Линукса я себе когда-то ставил, ничего страшного нет. Но только я не программист, поэтому поставить линукса, скачать книгу, а потом его сносить желания нет. Тем более потому что эквивалентное этому действие с точки зрения результата - это узнать два параметра в куки
как я уже упоминал все эти данные есть в FireBug-е
Всем спасибо! Поперло!
она сама пролистает книгу и засканит
Оставить комментарий
Nataliaj
Есть книга в инете, которую можно открыть во флеш-оболочке с кнопочками - след. страница, пред. страница. Хочется ее отсканить. Самый тупой способ - написать прогу, которая по горячей клавише делает скриншот и сейвит на диск. Подскажите, пожалуйста, как сделать1) На Visual C# прогу, которая будучи неактивной (будет открыт браузер) будет реагировать на клавиши
2) Может как-то можно оптимизировать, например не клацать самому мышью на next