如何获得 IMDb 的系列发布年份和结束年份?
How to get IMDb's serie release year and end year?
我一直在尝试从 IMDb 系列页面中获取一些信息,包括以下数据:
- 姓名
- 发布 year\End 年份(如果存在)
- 评分
- 季节(数量)
- 持续时间
该页面似乎包含发行 year\End 年份的 3 个不同选项:
- 如果意甲还是运行:(2018-)
- 如果意甲只有1年:(2018)
- 如果几年后意甲结束:(2017-2018)
示例html代码:
<title>Collateral (TV Mini-Series 2018) - IMDb</title>
到目前为止我的代码:
if(isset($_GET['imdb'])) {
if(isset($_POST['btnGetContent'])) {
$cUrl = curl_init();
curl_setopt($cUrl,CURLOPT_URL, "{$_POST['getContentUrl']}");
curl_setopt($cUrl,CURLOPT_RETURNTRANSFER,true);
curl_setopt($cUrl,CURLOPT_HEADER, false);
$output = curl_exec($cUrl);
curl_close($cUrl);
$array = array();
if(preg_match('/<h1 itemprop="name"[^>]*>(.*?)\s+g*<\/h1>/',$output,$matches)) {
$array["title"] = htmlspecialchars(str_replace(" ","",$matches[1]));
}
if(preg_match('/TV Series \((\d{4})(?-:.*)\)/',$output,$matches)) {
$array["releaseYear"] = $matches[1];
}
如有任何建议,我们将不胜感激。
if(preg_match('/<title>.*?\((.*?)\).*?IMDb<\/title>/',$output,$matches)) {
//(YYYY-YYYY)
if(preg_match('/.*?(\d{4}).*?(\d{4})/',$matches[1],$match)) {
$array["releaseYear"] = $match[1];
$array["endYear"] = $match[2];
}
// (YYYY- )
else if(preg_match('/.*?(\d{4})./',$matches[1],$match)) {
$array["releaseYear"] = $match[1];
$array["endYear"] = "0";
}
// (YYYY)
else if(preg_match('/.*?(\d{4})/',$matches[1],$match)) {
$array["releaseYear"] = $match[1];
$array["endYear"] = $match[1];
}
}
我一直在尝试从 IMDb 系列页面中获取一些信息,包括以下数据:
- 姓名
- 发布 year\End 年份(如果存在)
- 评分
- 季节(数量)
- 持续时间
该页面似乎包含发行 year\End 年份的 3 个不同选项:
- 如果意甲还是运行:(2018-)
- 如果意甲只有1年:(2018)
- 如果几年后意甲结束:(2017-2018)
示例html代码:
<title>Collateral (TV Mini-Series 2018) - IMDb</title>
到目前为止我的代码:
if(isset($_GET['imdb'])) {
if(isset($_POST['btnGetContent'])) {
$cUrl = curl_init();
curl_setopt($cUrl,CURLOPT_URL, "{$_POST['getContentUrl']}");
curl_setopt($cUrl,CURLOPT_RETURNTRANSFER,true);
curl_setopt($cUrl,CURLOPT_HEADER, false);
$output = curl_exec($cUrl);
curl_close($cUrl);
$array = array();
if(preg_match('/<h1 itemprop="name"[^>]*>(.*?)\s+g*<\/h1>/',$output,$matches)) {
$array["title"] = htmlspecialchars(str_replace(" ","",$matches[1]));
}
if(preg_match('/TV Series \((\d{4})(?-:.*)\)/',$output,$matches)) {
$array["releaseYear"] = $matches[1];
}
如有任何建议,我们将不胜感激。
if(preg_match('/<title>.*?\((.*?)\).*?IMDb<\/title>/',$output,$matches)) {
//(YYYY-YYYY)
if(preg_match('/.*?(\d{4}).*?(\d{4})/',$matches[1],$match)) {
$array["releaseYear"] = $match[1];
$array["endYear"] = $match[2];
}
// (YYYY- )
else if(preg_match('/.*?(\d{4})./',$matches[1],$match)) {
$array["releaseYear"] = $match[1];
$array["endYear"] = "0";
}
// (YYYY)
else if(preg_match('/.*?(\d{4})/',$matches[1],$match)) {
$array["releaseYear"] = $match[1];
$array["endYear"] = $match[1];
}
}