Задать вопрос
@sidorchik

Как спарсить блок, которого нет на странице первоначально?

Я спарсил поисковую выдачу каталога библиотек. Теперь мне нужно извлечь из неё
Основное заглавие:
5af456e6b13f3955011220.jpeg


Как обычно, смотрю
код в консоли:
5af45730df398271083127.png


и делаю запрос:
echo $xpathSKBM->query('//div[@class="tabdivs"]/div[@class="adddiv"][1]/p[1]/text()')[0]->nodeValue;


Но ничего не выводится. Разбираюсь почему.

При первой загрузке страницы у книги
не открыта выпадайка:
5af45951c7071032213256.jpeg

Она пустая:
5af459cfbc0be223040977.png


Она заполняется данными после клика на псевдоссылку «Подробнее». Получается, в момент нажатия вызывается метод seeAdd.
Код псевдоссылки:
5af45a6645c63341235974.png


Описание метода в default11.js:
function seeAdd(o, ind, c, rdb)
{
	typework = "";
	addid = "add" + c;
	if (take(addid).n.style.display == 'none')
	{
		if (take(addid).n.innerHTML == '')
		{
			take(addid).n.innerHTML = '<div class="progress small"><div></div></div>';
			var gArr = new Array();
			var querylist = new Array();
			gArr.push(["_action", "execute"]);
			gArr.push(["_html", "stat"]);
			gArr.push(["_errorhtml", "error"]);
			querylist.push(["_service", "STORAGE:opacfindd:FindView"]);
			querylist.push(["_version", "2.3.0"]);
			querylist.push(["session", numsean]);
			var tmp = /\\{1,}/g;
			if (tmp.test(ind))
				ind = ind.replace(tmp, '\\');
			querylist.push(["iddbIds[0]/id", ind]);
			var db = numDB;
			if ((typeof rdb != "undefined") && (rdb != ""))
			{
				db = rdb;
			}
			querylist.push(["iddbIds[0]/iddb", db]);
			var dboutff = outformfull;
			if ((typeof dbs[db] != "undefined") && (typeof dbs[db].outformfull != "undefined"))
				dboutff = dbs[db].outformfull;
			querylist.push(["outform", dboutff]);
			querylist.push(["_history", "yes"]);
			querylist.push(["$iddb", db]);
			if (typeof _localiddb != "undefined")
				gArr.push(["querylist", prepareQueryString(querylist, _iddb)]);
			else
				gArr.push(["querylist", prepareQueryString(querylist, db)]);
			ajaxToRCP(gArr, displayAdd);
		}
	}
	showHide2(o, addid);
}


Как спарсить «Основное заглавие»?
  • Вопрос задан
  • 115 просмотров
Подписаться 2 Простой 10 комментариев
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы