Выбор данных таблицы на веб-странице - PullRequest
0 голосов
/ 26 апреля 2011

Я пытаюсь получить результаты с веб-сайта empire magazine (таблица Film Reviews (Popular Matches)), используя YQL - http://www.empireonline.com/search/default.asp?search=Dragonheart (в качестве примера), и я использую firebug для получения xpath, но он похоже, не хочет возвращать результаты. Это то, что я использую;

select * from html where url='http://www.empireonline.com/search/default.asp?search=cars' and xpath='/html/body/table[3]/tbody/tr[5]/td[2]/table[2]/tbody/tr/td/table[2]/tbody/tr/td/table[2]'

Теперь, кажется, можно использовать;

select * from html where url='http://www.empireonline.com/search/default.asp?search=cars' and xpath='//table'

Но это целая куча данных, которые мне не нужны.

1 Ответ

1 голос
/ 03 мая 2011

Вам просто нужно быть внимательным при создании соответствующего запроса XPath.Следующее получает ссылку и название каждого из обзоров, перечисленных в этой таблице HTML, сначала нацеливаясь на параграф « Обзоры фильмов (популярные совпадения) », а затем переходя к списку фильмов.

SELECT href, strong
FROM html
WHERE url   = 'http://www.empireonline.com/search/default.asp?search=Thor'
AND   xpath = '
    //p[.="Film Reviews (Popular Matches)"]
    /ancestor::table[1]
    /following-sibling::table[1]
    //td[2]/a
'

( Попробуйте этот запрос в консоли YQL .)

...