2013-06-24 2 views
0

не Пытаться получить все заголовки из http://www.112.ru/services/wanted/people/index.shtml?roztype=1 с использованием Yahoo PipesXfetch модуль.XPath запрос возвращает никаких результатов в Yahoo Pipes

Мой запрос //span[@class='uchbold'] выбрать все должности в категории Firepath. Но в Yahoo Pipes и Hpple результатов не найдено.

+0

Возможно, есть люди, которые готовы нажать на ссылку в www.112.ru. Другие (включая меня) менее доверчивы и поэтому не будут отвечать на ваш вопрос. Гораздо лучше скопировать достаточный фрагмент XML в вопрос. –

+0

@MichaelKay Как выяснил Йенс, это была проблема из-за асинхронной загрузки частей данных. В случае, если я разместил здесь только html-источник, было бы невозможно ответить на вопрос. – Shmidt

ответ

1

Эти атрибуты класса вставляются с помощью JavaScript, который не выполняется с использованием Yahoo Pipes и Hpple.

Также содержимое загружается с помощью ajax, вам придется трассировать вызовы ajax и развиваться против этого интерфейса.

Использование Firebug я мог проследить его загрузки

http://www.112.ru/publish/00/01/0508.01/2012/08//contents.xml 

и много других файлов "contents.xml", которые вернулись 404 ошибки. Он содержит содержимое в виде таких элементов, как

<view file="0901156380089d71_0508.01_00_01.full.shtml" format="full" indexed="true"/> 

которые, похоже, снова ссылаются на некоторые фрагменты HTML, содержащие фактические данные.

+0

Можете ли вы, пожалуйста, порекомендовать какой-либо учебник/документацию для дальнейшего чтения? – Shmidt

+1

Вам нужно будет прочитать и проанализировать загрузку файлов JavaScript, чтобы как-то получить представление о том, как они загружают данные и как это сделать без JavaScript. Как только вы узнаете, как определить загружаемые URL-адреса, вам нужно их собрать и объединить. Извините, я не могу вам помочь, поскольку я не знаю Yahoo Pipes в деталях. Или вы создаете какой-то прокси-сервер с помощью Node.JS или некоторых других инструментов и используете его для оценки JavaScript перед синтаксическим разбором с Yahoo Pipes, но я думаю, что это еще сложнее (и требует сервера). –