TheBarmaley
![](http://forum.ru-board.com/board/avatars/private/TheBarmaley.gif)
Platinum Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору greeple Цитата: в центе AF_initDataChunkQueue[1].data[20] под нулём undefined, в супермиуме так же, но это если var AF_initDataKeys = ["ds:0","ds:1"] ds:1 подгружается, а у некоторых расширок не подгружает. А вот пока писал ещё раз проверил, иногда вообще не подгружает манифест туда, иногда по нулю, а иногда по единице доступен, не всегда он подгружается в то место куда надо, одно и тоже расширение просто то ли браузер перезапускаешь то ли обновляешь страницу, но иногда меняется эта переменная | хз. я смотрел в хромиум-госте-49 и в хр-хроме-115 - данные лежат именно в том куске, который с 0, с 1 что-то другое там. ради интереса глянул сейчас в 360ее11 - да, пришлось поменять 0 на 1, чтоб манифест вывело.. т.е. там (в переменных страницы) действительно что-то меняется, от юзер-агента или ещё как, хз.. Цитата: ты же в расширении просто со страницы сплитами берёшь, а не из js | естессно! меня же текстовка интересовала, изначально страница режется по "характерному" вхождению (строчка 47 как писал). во всяком случае, текущий шаблон обрезки пока нигде сбоев не давал (в отличие от первого упрощённого). т.е. пока прокатывает вот такая обрезка для получения полного блока данных вместе с манифестом: Код: JSON.parse('[["'+document.body.innerHTML.split(/AF_initDataCallback\(\{key:\s?'ds:0'/)[1] .split(/:\s?'\d',\s?data:\[\["/)[1] .split(/,\s?sideChannel:/)[0]) | здесь document.body.innerHTML - это текст исходной страницы (напр., через view-source:....) манифест там (в полученном массиве) и будет элементом [20], по идее - должно быть независимо от браузера. и да - скриптом ведь нельзя получить переменную по ссылке, поэтому в воровайке только запросом/парсером можно. кстати, запустить некий скрипт-инжектор в новых движках тоже фиг - новые браузеры не дают уже, успели огородиться.)) вопчем, под твою задачу (наверное) всё же лучше запрос страницы делать (пока переменные ещё НЕ изменились!) и стричь оттуда. т.е парсер текста всей исходной страницы всяко надёжнее, мы ж (пока) не знаем чем гугел руководствуется в скриптах.. но вот если в гуглозине поменяется общий порядок следования блоков текста или названия переменных - всё по-новой...) Добавлено: greeple Цитата:пока я на предыдущее ответ писал - ты уже смастерил.. т.е. в любом случае нужен запрос исходника, фиг знает, как они меняют текст/переменные на текущей, если вдруг браузер "не тот"..)
|