开篇我们谈过如何采集豆瓣的影片信息,并把影片信息以豆瓣ID为主键存储,存储方式多种多样,可以用数据库,文件,还有最方便的redis。今天就讲讲如何把电影网站的影片与豆瓣信息关联,并把豆瓣评分、评分人数等信息补充到影片里。
虽然现在的很多的电影网站程序都支持根据豆瓣ID关联豆瓣信息,但前提需要知道对应影片的豆瓣ID,然后在后台视频管理里一个个的手工采集,而且官方的采集都是通用的,使用的人很多,经常无法更新到豆瓣信息。
那怎样避免手工更新,实现采集的影片信息自动更新匹配到豆瓣评分、豆瓣评分人数等信息呢?其实方法很简单,现在电影网站程序,如苹果cms、飞飞影视、马克思等,都支持api调用资源网站采集。
原本我们只需要填写资源采集网的地址,那要自动关联豆瓣评分等内容,那就写一个封装的重组api资源的页面,比如取名为doubanapi.php。为了处理方便,我们使用json格式api资源,doubanapi.php先通过curl获取资源信息,我们将获取的json数据使用json_decode函数转为一个数组。通过foreach获取数组中的影片名称、主演、编剧、导演、年份等信息,然后根据影片名称去豆瓣上模糊查询影片信息(主要查询豆瓣ID)。豆瓣ID对应的豆瓣信息如果redis里面有,直接从redis里获取,如果没有就直接去豆瓣采集,同时存入redis缓存里。
有了影片信息,同时也有了豆瓣信息,下面要做的就是自动完成影片信息和豆瓣信息的匹配,根据本人的经验