有电影showtime api吗?

时间:2009-01-13 17:09:19

标签: api movies

有没有人知道任何(最好免费)支持的api用于通过邮政编码访问电影放映时间?

我不相信任何现有的api,例如netflix或imdb,都会提供此信息。

13 个答案:

答案 0 :(得分:16)

禁用“allow_url_fopen”时,请使用

    <?php
/**
 * Google Showtime grabber
 * 
 * This file will grab the last showtimes of theatres nearby your zipcode.
 * Please make the URL your own! You can also add parameters to this URL: 
 * &date=0|1|2|3 => today|1 day|2 days|etc.. 
 * &start=10 gets the second page etc...
 * 
 * Please download the latest version of simple_html_dom.php on sourceForge:
 * http://sourceforge.net/projects/simplehtmldom/files/
 * 
 * @author Bas van Dorst <info@basvandorst.nl>
 * @version 0.1 
 * @package GoogleShowtime
 *
 * @modifyed by stephen byrne <gold.mine.labs@gmail.com>
 * @GoldMinelabs.com 
 */

require_once('simple_html_dom.php');

$curl = curl_init(); 
curl_setopt($curl, CURLOPT_URL, 'http://www.google.ie/movies?near=dublin');  
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);  
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 10);  
$str = curl_exec($curl);  
curl_close($curl);  

$html = str_get_html($str);

print '<pre>';
foreach($html->find('#movie_results .theater') as $div) {
    // print theater and address info
    print "Theate:  ".$div->find('h2 a',0)->innertext."\n";
    //print "Address: ". $div->find('.info',0)->innertext."\n";

    // print all the movies with showtimes
    foreach($div->find('.movie') as $movie) {
        print "Movie:    ".$movie->find('.name a',0)->innertext.'<br />';
        print "Time:    ".$movie->find('.times',0)->innertext.'<br />';
    }
    print "\n\n";
}

// clean up memory
$html->clear();
?>

答案 1 :(得分:8)

是的,雅虎显然已于2009年11月删除了他们的秘密电影API 似乎每个人都从TMS Data Direct获取数据:http://www.tmsdatadirect.com/

答案 2 :(得分:7)

不知道Google是否将其公开为api,但这看起来很像你想要的。 http://www.google.com/movies?hl=en&near=90210&dq=movie+times+90210&sa=X&oi=showtimes&ct=title&cd=1

答案 3 :(得分:2)

抱歉,在发布问题之前,我应该多搜索一下。

有些creative searching on del.icio.us透露了一张无证件的雅虎!电影api(sample api call)。

看起来不错。

答案 4 :(得分:1)

看了一下之后,我发现Dapper(open.dapper.net)是创建这种类型的Feed的绝佳解决方案......

这是我制作的Feed,它以电影标题和邮政编码作为参数。 (大多数其他人只能通过ZIP搜索)

http://www.dapper.net/dapp-howto-use.php?dappName=GoogleMoviesbynameANDzip

花了大约5分钟来设置...

答案 5 :(得分:1)

我也在寻找放映时间,我可以合法地抓取并重新发布。雅虎的声音就像你不是出于商业目的那样,它并没有被禁止......或许这是我的一厢情愿。

  

您同意不复制,复制,   复制,出售,交易,转售或利用   用于任何商业目的,任何   部分或使用或访问   雅虎服务

答案 6 :(得分:1)

Fandango似乎有RSS源,可以让你搜索附近的电影。

http://www.fandango.com/rss/moviefeed

答案 7 :(得分:1)

不确定从中获取html是否合法,但是,它是我发现的最干净的伪API。 http://opensocial.flixster.com/igoogle/showtimes?date=20111025&postal=23226 - 只需用类似的东西来抓取HTML

$('div.showtime', response).each(function() {
   // ... process each showtime div
});

答案 8 :(得分:0)

我的猜测是你最好的赌注(除非这些人有RSS提要)是用一种支持正则表达式的语言来抓取HTML。

请注意,这很难看,每当他们改变代码时,你的代码都会破坏。

答案 9 :(得分:0)

我找不到一个。

你可以试试雅虎电影的屏幕抓取: http://movies.yahoo.com/showtimes/movie?z=60630&date=20090113&mid=1810038822

z    = zip code
date = year + month + day (as a string)
mid  = movieID, which you will have to grab from Yahoo Movies

答案 10 :(得分:0)

我也在寻找一个showtime API,和你一样,我还没有为电影放映时间找到一个好的API。我决定根据Google Showtimes编写自己的“showtime API”。请检查一下。

这是一个简单的PHP脚本,但“它做它应该做的事情”:

    <?php
/**
 * Google Showtime grabber
 * 
 * This file will grab the last showtimes of theatres nearby your zipcode.
 * Please make the URL your own! You can also add parameters to this URL: 
 * &date=0|1|2|3 => today|1 day|2 days|etc.. 
 * 
 * Please download the latest version of simple_html_dom.php on sourceForge:
 * http://sourceforge.net/projects/simplehtmldom/files/
 * 
 * @author Bas van Dorst <info@basvandorst.nl>
 * @version 0.1 
 * @package GoogleShowtime
 */

require_once('simple_html_dom.phps');

$html = new simple_html_dom();
$html->load_file('http://www.google.nl/movies?mid=&hl=en&near=1400AB');

print '<pre>';
foreach($html->find('#movie_results .theater') as $div) {
    // print theater and address info
    print "Theate:  ".$div->find('h2 a',0)->innertext."\n";
    print "Address: ". $div->find('.info',0)->innertext."\n";

    // print all the movies with showtimes
    foreach($div->find('.movie') as $movie) {
        print "\tMovie:    ".$movie->find('.name a',0)->innertext.'<br />';
        print "\tTime:    ".$movie->find('.times',0)->innertext.'<br />';
    }
    print "\n\n";
}

// clean up memory
$html->clear();

?> 

实施例: http:// code.basvd.nl/showtime_grabber_0.1/Google_showtime.php

下载simple_html_dom.php: http:// code.basvd.nl/showtime_grabber_0.1 /

答案 11 :(得分:-1)

我知道这有点老了。我认为这还没有api,但有些提供商确实提供此服务。我建议你看看西方世界媒体。

答案 12 :(得分:-3)

http://www.google.com/ig/api?movies=YOUR_ZIP_HERE

感谢尼克。这就是我将要使用的链接。