html
  • yql
  • 2010-07-20 3 views 1 likes 
    1

    Этот отчет YQL (execute in the YQL console) определяет название и год фильма с сайта TMDB.Пошив вывода YQL

    select content from html where url="http://www.themoviedb.org/movie/27205" and xpath='//h3[@id="year"]|//h2[@id="title"]/a' 
    

    результаты возвращаются, как это:

    "results": { 
        "a": "Inception", 
        "h3": "(2010)" 
    } 
    

    Есть ли простой способ иметь этикетку результаты, как «имя» и «год», а не HTML-элементов, они были схвачены из?

    Cheers!

    ответ

    2

    В настоящее время нет easy Способ быстрого добавления возвращенных меток. Лучший способ на данный момент - создать пользовательский код data table, который делает ваш запрос в TMDB и преобразует результат (с Javascript в блоке <execute>) в любое удобное для вас время.

    Например, я создал для вас пользовательскую таблицу, которая возвращает результаты с выбранными вами ярлыками (name и year). Он также удаляет круглые скобки круглый год. Для того, чтобы дать ему пробный пуск, использование:

    use "store://github.com/tmdb-jp" as tmdb; 
    select * from tmdb where movieid="27205" 
    

    С полученной JSON, имеющей следующую структуру (в пределах обычного ответа YQL):

    "movie": { 
    "title": "Inception", 
    "year": "2010" 
    } 
    

    Если вы хотите, чтобы идти в создавая таблицу данных самостоятельно, или просто посмотрите, что происходит, тогда источник находится на my github. Кроме того (это может быть полезно) вы можете запросить несколько фильмов сразу:

    use "store://github.com/tmdb-jp" as tmdb; 
    select * from tmdb where movieid in ("27205","9802") 
    

    P.S. URL-адреса store:// означают, что таблица данных хранится в облаке Yahoo !, для скорости и надежности. Вы можете, конечно, использовать обычный URL-адрес http:// (например, github one).

    +0

    Вы являетесь героем ** **! Прекрасный ответ с примерами и объяснениями - больше ничего не может быть предложено - спасибо! –

    Смежные вопросы