2018-12-17派森学习第29天

继续写API获取豆瓣电影前250的程序。

链接:https://api.douban.com/v2/movie/top250

打开链接后,是编译过的json数据,借助json格式化工具可以让json数据的结构更加清晰:

格式化后


data_for_json是字典类型,包括count,start,totle,subjects,title五个键,其中subjects中包含需要的电影信息

20部电影

下图中的红色框内才是需要的电影信息数据:

电影信息


成功得到第一页中的20部电影:

成功打印电影名


通过构造链接,改变start和count的值,可以控制获取的电影部数,例如start=241,count=10时,可以得到排名241-250名的电影:

排名241-250名的电影

导入random模块,产生1-250的随机数,从中选取一个,并设置范围为10,打印随机数周边的10部电影:

第133名周围电影


然后把程序整理成class MoviesInformation,可导入,然后调用:

类作为模块导入

命名规范要求,普通函数的命名和普通变量相同,也就是:小写加下划线连接。修改之后,

函数命名规范之后

现在可以导入自定义模块了。import Watch

 运行结果

成功实现随机推荐一个豆瓣排名前250的电影。

然而,缺少一个获得电影简介的功能,先通过得到电影的id,构造出summary的网址,然后和上面一样打开网址,获得json数据,然后取出自己需要的summary数据:

得到电影简介

注意:

模块名: 

小写字母,单词之间用_分割 

ad_stats.py 


包名: 

和模块名一样 


类名: 

单词首字母大写 

AdStats 

ConfigUtil 


全局变量名(类变量,在java中相当于static变量): 

大写字母,单词之间用_分割 

NUMBER 

COLOR_WRITE 


普通变量: 

小写字母,单词之间用_分割 

this_is_a_var 


实例变量: 

以_开头,其他和普通变量一样 

_price    

_instance_var 


私有实例变量(外部访问会报错): 

以__开头(2个下划线),其他和普通变量一样 

__private_var 


专有变量: 

__开头,__结尾,一般为python的自有变量,不要以这种方式命名 

__doc__ 

__class__ 


普通函数: 

和普通变量一样: 

get_name() 

count_number() 

ad_stat() 


私有函数(外部访问会报错): 

以__开头(2个下划线),其他和普通函数一样 

__get_name() 

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。