python脚本/类下载一个完整的imgur相册到您选择的文件夹中
imgur-downloader的Python项目详细描述
这是一个简单的python脚本,包含一个类和命令行接口 这使得你可以用任何imgur链接一次下载全分辨率的ann图像。
JTARA1叉子-功能
- 下面是现在支持的链接类型的一些示例:
相册文件夹或图像的名称由html<;title>;值或传递的参数确定。
使用相册/图库/图像标题作为已创建的文件夹标题,其中包含附加了键的图像,例如:
We don't have a blue backdrop, just tint the whole photo blue. (SnkkAVU).png
添加“仅打印”选项,打印imgur url的直接链接。
如果遇到IMGUR下载,则不存在图像。 它是通过比较http请求的字节来实现的 到程序中的本地imgur dne文件。 此功能可在init参数中切换。
- Added function is_imgur_dne_image(self, img_path), which returns True if the image from img_path is the same image as the Imgur does not exist image and return False otherwise.
- Added function are_files_equal(self, file1, file2), which compares the bytes and returns True if the bytes are equal, and return False otherwise
ImgurDownloader('http://i.imgur.com/removed.png',delete_dne=True,debug=True).save_images()
- 将扩展名为.gifv的imgur链接下载为mp4文件
ImgurDownloader('http://i.imgur.com/A61SaA1.gifv').save_images()
- 保存图像&;cite>直接下载方法现在返回两个整数的元组。 第一个整数表示下载成功 第二个表示跳过的下载(失败或检测到imgur dne)。 例如,输出最后一行的值是从保存图像方法返回的值:
# Code ran (url is an imgur Album with 5 images):print(imguralbum.ImgurDownloader(url,dir1,file_name=rand_name,debug=False).save_images())# output: (5, 0)
初始化函数参数更改
- 第二个可选参数,dir_download=os.getcwd(), 允许下载到特定目录(不适用于cli),例如:
ImgurDownloader('http://imgur.com/SnkkAVU','/home/user/Downloads/')
- 第三个可选参数,文件名=', 如果输入是单个图像,则允许用户指定文件名 或文件夹,如果输入是相册。 注意,这比imgur键和相册网页标题优先,例如:
ImgurDownloader('http://imgur.com/SnkkAVU','/home/user/Downloads/','my-img')
- 第四个可选参数,delete=true, 它检查下载的每个图像,如果其字节与imgur-dne.png的字节匹配,则将其删除,例如:
ImgurDownloader('http://imgur.com/SnkkAVU','/home/user/Downloads/','my-img',True)
- 第五个可选参数,debug=false, 它在代码运行时在整个代码中打印多个变量
ImgurDownloader('http://imgur.com/SnkkAVU','/home/user/Downloads/','my-img',True,True)
要求
python=3.3
命令行用法
$ imgur_downloader [album URL][folder to save to]
将相册中的所有图像下载到/users/alex/images/downloaded文件夹中
$ imgur_downloader http://imgur.com/a/uOOju /Users/alex/images/downloaded
下载所有图像并将其放入当前目录下名为“uooju”的相册中
$ imgur_downloader http://imgur.com/a/uOOju
它也可以与下载程序一起使用,例如使用仅打印选项的wget。
$ imgur_downloader --print-only http://imgur.com/a/SVq41 | xargs wget
类用法
该类允许您在自己的python程序中下载imgur专辑,而不必 通过命令行。下面是它的用法示例:
downloader=ImgurDownloader("http://imgur.com/a/uOOju")print("This albums has {} images".format(downloader.num_images()))downloader.save_images()
回拨
您可以通过两次回调连接到类进程:
downloader.on_image_download()downloader.on_complete()
通过查看docblocks,您可以看到您的回调函数得到了什么样的参数 对于.py文件中的on_*函数。
完整文档
整个shebang、类和cli都使用单个.py文件中的字符串docblock进行了完整的文档记录 所以请仔细阅读,而不是依赖这个自述文件,这可能会过时。
许可证
麻省理工学院