日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

魅族云相册批量下载方案

發布時間:2024/8/26 综合教程 41 生活家
生活随笔 收集整理的這篇文章主要介紹了 魅族云相册批量下载方案 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2015年開始使用魅族手機,16G存儲,當時應該是很普遍的配置,以為平時不玩游戲也夠用。

2017年因為打王者太卡了,換了另外一臺CPU和內存更高的魅族,64G存儲。后面用到2020年,華為被老M欺負(可能還是覺得打王者有點不順暢),轉支持華為。

手機廠商一般都為相冊提供了云存儲功能,每次拍完照片都會自動上傳到云存儲,非常方便,每隔幾個月清理一下手機空間即可,為此還連續幾年購買了云空間容量年套餐。

然將近6年拍攝了近百G的照片和視頻(這6年也正是伴隨芊芊和芊弟弟,每個瞬間都有記錄),后面發現沒辦法下載下來了。

魅族云存儲通過手機無法直接下載整個目錄(手機空間不夠),登錄WEB后臺只能一張一張的選擇下載,就是個雞肋。

等了好幾年都不見優化這個功能,無奈只能寫個腳本自己搞定。

魅族是使用的阿里云OSS(對象存儲),本身阿里云提供了多種語言的SDK,調用對應接口即可,沒啥技術難度。

這里分享一個思路(小白略過,直接按下面步驟做即可):

先調用魅族的接口,拿到相冊和所有照片、視頻信息(主要是拿到下載地址);

然后根據Flyme云服務的接口拿到請求阿里云OSS接口所需的token和key信息,例如:https://mzstorage.meizu.com/file/get_sig接口,這里不作細述,感興趣的可以看腳本。

最后是直接調用阿里云SDK下載照片和視頻。

本來想寫個通用程序,然后做個Docker鏡像,方便一些小白使用,但是這玩意價值不大(有人付費就有價值,哈哈),懶得折騰了,還是寫個教程吧(主要對象是小白)。

下面教程是基于我提供的腳本來編寫(腳本是github上找的,做了一些修改),理論上跟著步驟往下走是沒啥大問題,如有什么問題可以直接留言。

(一、環境準備)

首先下載腳本包到本地電腦任意目錄解壓,建議直接放到某盤根目錄。

github地址:https://github.com/SeanXiao1207/mzstorage

然后進入mzstorage-master解壓目錄,能看到如下文件列表

此時可以看到腳本是使用PHP寫的,so
我們要準備一個PHP環境。

這里推薦一個傻瓜式的PHP開發環境,直接下載安裝就有一整套PHP+MySQL+Nginx/Apache等環境的操作面板,非常方便。

下載地址:https://www.xp.cn/download.html

進入地址后直接選擇“立即下載”即可,然后解壓運行安裝程序完成安裝。

打開軟件,可以看到這里有很多操作選項,我們只需要用到MySQL(存儲相冊和照片、視頻信息),然后就是配置PHP運行環境(運行PHP腳本)。

啟動MySQL(1),然后選擇”數據庫“(2),選擇”修改root密碼“為123456。

需要執行SQL腳本,選擇數據庫工具”打開“(3),選擇”SQL-Front“,如果提示沒有安裝,只需要按照提示去”軟件管理“中選擇”安裝“即可。

然后再打開(3),選擇”SQL-Front“,打開后輸入root/123456登錄,然后在"SQL編輯器"中復制執行下面執行下面腳本。

CREATE DATABASE IF NOT EXISTS task;?
# 創建圖片記錄表
CREATE TABLE task.`dy_mz_album` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '記錄id', `album_id` int(10) unsigned DEFAULT '0' COMMENT '照片id', `dirId` int(10) unsigned DEFAULT '0' COMMENT '相冊id', `dirName` varchar(64) DEFAULT NULL COMMENT '相冊名稱', `fileName` varchar(255) DEFAULT NULL COMMENT '照片名稱', `groupDirId` varchar(64) DEFAULT NULL, `groupId` varchar(64) DEFAULT NULL, `height` int(10) unsigned DEFAULT '0' COMMENT '照片高度', `width` int(10) unsigned DEFAULT '0' COMMENT '照片寬度', `isVideo` tinyint(3) unsigned DEFAULT NULL COMMENT '是否視頻', `md5` varchar(64) DEFAULT NULL COMMENT '文件md5', `createTime` bigint(13) unsigned DEFAULT NULL COMMENT '創建時間', `modifyTime` bigint(13) unsigned DEFAULT NULL COMMENT '修改時間', `remainTrashTime` bigint(13) unsigned DEFAULT NULL, `shootTime` bigint(13) unsigned DEFAULT NULL, `size` bigint(20) DEFAULT NULL, `sqlNow` bigint(13) unsigned DEFAULT NULL COMMENT '最后查詢時間', `tags` varchar(255) DEFAULT NULL COMMENT '標簽', `thumb256` varchar(255) DEFAULT NULL COMMENT '縮略圖', `thumb1024` varchar(255) DEFAULT NULL COMMENT '縮略圖', `uid` varchar(10) DEFAULT NULL COMMENT 'uid', `userId` int(10) unsigned DEFAULT NULL, `url` varchar(255) DEFAULT NULL COMMENT '圖片路徑', `local` varchar(255) DEFAULT '' COMMENT '本地路徑(代表是否已下載)', `status` int(2) unsigned DEFAULT NULL COMMENT '狀態', `create_time` datetime DEFAULT NULL COMMENT '上傳時間', `update_time` datetime DEFAULT NULL COMMENT '采集時間', `is_delted` tinyint(1) unsigned DEFAULT '0' COMMENT '是否被刪除', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=3500 DEFAULT CHARSET=utf8mb4;? # 創建相冊表 CREATE TABLE task.`dy_mz_dir` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增id', `dir_id` int(10) unsigned DEFAULT '0' COMMENT '相冊id', `dirName` varchar(64) DEFAULT NULL COMMENT '相冊名稱', `fileNum` int(10) unsigned DEFAULT '0' COMMENT '相冊數量', `icon` varchar(255) DEFAULT '' COMMENT '縮略圖', `sqlNow` bigint(13) unsigned DEFAULT '0' COMMENT '最后一次查詢時間', `modifyTime` bigint(13) unsigned DEFAULT '0' COMMENT '最后修改時間', `createTime` bigint(13) unsigned DEFAULT '0' COMMENT '相冊創建時間', `userId` int(10) unsigned DEFAULT '0' COMMENT '用戶id', `totalSize` bigint(20) DEFAULT NULL COMMENT '相冊總大小', `status` tinyint(2) unsigned DEFAULT NULL COMMENT '相冊狀態', `create_time` datetime DEFAULT NULL COMMENT '上傳時間', `update_time` datetime DEFAULT NULL COMMENT '采集時間', `is_delted` tinyint(1) unsigned DEFAULT '0' COMMENT '是否被刪除', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=utf8mb4 COMMENT='魅族相冊表';

如果不想用默認的密碼和端口,可以在解壓目錄config.php配置文件中修改,默認不要動這里。

然后就是配置PHP環境,PHP環境只需要配置一個環境變量即可。

打開命令提示符(cmd),執行下面命令就可以完成PHP環境變量設置,注意下面%path%;后面部分是PHP所在目錄,注意你的phpstudy是在C盤還是D盤,一般只需要修改盤符即可。

setxpath "%path%;C:phpstudy_proExtensionsphpphp7.3.4nts"

至此,配置工作已經完成了。

(二、執行腳本)

在cmd進入腳本所在目錄,執行拉取相冊命令,因為照片和視頻信息是需要通過相冊ID來獲取。

K:Users15814Downloadsmzstorage-master>php dir.php
[MSG] 用戶信息驗證失敗
[ERROR] TOKEN失效,請更新token!> 刷新flyme云服務的相冊頁面,復制獲取token的js方法到Console窗口下獲取token,并更新到token文件中。
[INPUT] 請輸入新的Token:

如上,執行phpdir.php后會提示需要更新token,登錄flyme云相冊。

登錄flyme云相冊:https://photos.flyme.cn/photo/index

然后在瀏覽器中按F12,選擇Console,執行下面腳本獲取token。

function getCookie(name){var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");if(arr=document.cookie.match(reg)){return unescape(arr[2])}else{return null}}getCookie("_utoken");

直接將這一串紅色字符串粘到上面提示輸入新token的命令行中,會看到相冊列表出來了。

K:Users15814Downloadsmzstorage-master>php dir.php
[NOTICE]Token 已更新。
-------------------id  相冊名稱------------------- 
圖片收藏       2張

-------------------請輸入: 'php album.php 277' 進行采集相冊更新成功!

然后根據相冊ID拉取每個相冊的照片和視頻信息,拉取相冊列表:php album.php

K:Users15814Downloadsmzstorage-master>php album.php
請選擇相冊:
-------------------id相冊名稱------------------- 
277 圖片收藏
-------------------請輸入: 'php album.php 277' 進行采集

拉取對應相冊:phpalbum.php277

K:Users15814Downloadsmzstorage-master>php album.php 
277相冊拉取:2/2 張更新完成!

最后就是下載照片和視頻:php down.php

K:Users15814Downloadsmzstorage-master>php down.php
更新OSS簽名!當前目錄中,
文件K:Users15814Downloadsmzstorage-masterdown圖片收藏4d852e2268ac5bfb2bed974ee645c7a6.jpg存在1
[SUCCESS] '05/41/84/65/054184657650dea606b6ddfea2ca98ae.jpg'當前目錄中,文件K:Users15814Downloadsmzstorage-masterdown圖片收藏6d653be354c137f9ed14917001b110e9.jpg存在1
[SUCCESS] '1c/10/57/56/1c105756c68afd67abbee6ba00d9bc66.jpg'所有照片已下載完畢!

(三、問題)

如果重復執行出現OSS.php signUrl的問題,需要清空.alioss_sigin文件內容,然后再次執行命令;

如果出現大量關閉流的問題,可以中斷執行,然后再次重復執行即可(這里一般是下載的時候token過期了,導致下載不到文件);

這里有幾個超時場景需要注意一下,方便處理問題:

阿里云存儲token超時(默認有1小時),將導致上面第2個問題;

數據庫超時,這里主要是MySQL端會超時關閉鏈接,這里要么改成短鏈接(每次建立連接)、要么修改my.ini配置interactive_timeout和wait_timeout都設置足夠大;

下載完后注意核對文件數,如果不一致可能是上面問題2導致的,只需要把數據重置一下即可,數據庫執行下面腳本。

update task.`dy_mz_album`setlocal = ''

-
end -


總結

以上是生活随笔為你收集整理的魅族云相册批量下载方案的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国精产品一区一区三区免费视频 | 精品视频一区在线观看 | 日韩综合 | 蜜桃在线一区二区三区 | 老熟妇仑乱一区二区av | 成年人在线免费看 | 亚洲一区二区精品 | 亚洲精品97久久中文字幕无码 | 国产传媒视频在线观看 | 国产美女主播在线 | 欧美自拍一区 | 91毛片网站 | 日韩精品在线观看免费 | 激情小说中文字幕 | 久久精品久久久精品美女 | 韩国午夜av| 女生张开腿让男生插 | 中文在线最新版天堂8 | 日韩逼| 国产高清视频在线播放 | 波多野在线观看 | 韩国黄色网址 | 日韩一级影片 | 图片区视频区小说区 | 爱爱视频在线免费观看 | 黄色私人影院 | 久久久久久久久久影院 | 日本人dh亚洲人ⅹxx | 欧美人与动物xxxxx | 男人桶进美女尿囗 | 国产精品成人国产乱 | 国产wwwwww | 欧美xxxx性| 干干操操 | 91爱爱影院 | 韩国三级做爰高潮 | 蜜臀国产AV天堂久久无码蜜臀 | 国产精品一二区 | 非洲黑人毛片 | 日韩一区二区三区电影 | 天天躁日日躁狠狠躁伊人 | 超碰在线最新地址 | www色| 欧美日韩色综合 | 亚洲欧美激情另类 | av资源网站 | 日韩成人在线播放 | 日韩av一区二区三区在线观看 | 国产精品99久久久 | 成人福利在线免费观看 | 欧美黄色特级视频 | 免费看日批视频 | 粉嫩小箩莉奶水四溅在线观看 | 亚洲综合色视频 | 国产成人在线播放视频 | 巨乳中文字幕 | 黑鬼巨鞭白妞冒白浆 | 好看的中文字幕 | 超碰97久久 | 国产成人在线视频 | 亚洲国产精品美女 | 人善交videos欧美3d动漫 | 久草成人 | 不卡中文字幕 | 性生活av| 国产美女永久免费 | 成人在线小视频 | 高潮一区二区 | 嫩草在线看| 久久亚洲精华国产精华液 | 在线观看成人免费视频 | 经典三级在线视频 | 国产综合99 | 色婷婷av在线 | 国产一区二区三区影视 | 精品影院| 91精品国产一区二区 | 久久av网址 | 久久老司机 | 在线免费观看一级片 | 99久久久国产精品无码网爆 | 国产精久久一区二区三区 | 99久国产| 亚洲精品无 | 91精品国产综合久久久蜜臀图片 | 性欧美丰满熟妇xxxx性久久久 | 激情婷婷六月 | 波多野结衣在线看 | 国产成人精品二区三区亚瑟 | 99国产精品视频免费观看一公开 | 亚洲精品无吗 | xxx国产精品| 日本老妇性生活 | 性欧美69 | 亲女禁h啪啪宫交 | 88av.com| 一区二区免费在线播放 | 香蕉影院在线 | 日本不卡高字幕在线2019 |