NASA搜索应用的创建
快速原型是一种快速创建小而实用的应用程序的方法,无需花费大量时间实现所有部件,而是在应用中自上而下依次添加。相较于创建一系列嵌套的sizer,这种方法效率更高。
首先,让我们创建一个名为nasa_search_ui.py的脚本:
这里将导入一些新包。第一个是请求包,使用方便,基于Python实现文件下载和Internet相关操作,许多开发人员认为它比Python自带的urllib更好用。不过它需要安装才能使用,同时还需要安装ObjectListView。
如下是使用pip的安装方法:
另外,需要导入urllib.parse,用于编码URL参数。最后,DownloadDialog是一个用于创建对话的类,用于NASA图像的下载。
由于在应用中将使用ObjectListView,因此需要一个类来表示该窗口部件中的对象:
Result类用于保存构成ObjectListView中每行的数据。Item参数是查询响应JSON的一部分。您可以根据需求解析相关信息。
在这种情况下,需要如下字段:
标题
图片位置
NASA内部ID
照片描述
摄影师名称
图像创建时间
缩略图URL
其中一些项并不总是包含在JSON响应中,在这些情况下,将通过get()方法返回空字符串。
下面将开始UI的实现:
MainPanel是程序的主体。这里,您可以处理一些内务工作并创建一个search_results,以便用户搜索时保存Result对象列表。您还可以设置缩略图的max_size,要使用的字体,sizer以及标准路径等。