国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

18143453325 在線咨詢 在線咨詢
18143453325 在線咨詢
所在位置: 首頁(yè) > 營(yíng)銷資訊 > 建站知識(shí) > 七牛云服務(wù)測(cè)試域名回收以前博客里面的相關(guān)圖片怎么辦?

七牛云服務(wù)測(cè)試域名回收以前博客里面的相關(guān)圖片怎么辦?

時(shí)間:2023-02-28 13:24:01 | 來(lái)源:建站知識(shí)

時(shí)間:2023-02-28 13:24:01 來(lái)源:建站知識(shí)

七牛云服務(wù)測(cè)試域名回收以前博客里面的相關(guān)圖片怎么辦?:前兩天收到一份郵件,七牛云發(fā)來(lái)的,說(shuō)是要回收我的測(cè)試域名,之前也不知道有測(cè)試域名這一說(shuō),可能怕有人干壞事吧??傊簿褪钦f(shuō),我之前上傳在七牛云上的博客圖片可能都要掛掉了。想想自己博客的文章圖片都 404 就悲催。





有兩個(gè)解決方法:




1.在七牛云上提交自己的域名,不過(guò)需要備案
2.把自己上傳在七牛云上的圖片爬取下來(lái),轉(zhuǎn)移陣地
對(duì)于第一種方式是最簡(jiǎn)單的,換自己的域名就可以了,但是得備案,最煩就是備案了,一堆惡心的認(rèn)證操作,而且總感覺(jué)背后有人在盯著你 - -

所以果斷選擇第二種解決方式,使用 Python 把圖片爬取下來(lái),轉(zhuǎn)移陣地。

分析七牛云存儲(chǔ)空間

通過(guò)這個(gè)存儲(chǔ)的鏈接中 https://portal.qiniu.com/bucket/blog/resource 抓包可以看到,這個(gè)URL https://portal.qiniu.com/api/kodo/bucket/files?bucket=blog&delimiter=&limit=50&marker= 會(huì)返回存儲(chǔ)數(shù)據(jù),也就是圖片地址和名稱,正是我想爬取的東東。

一次請(qǐng)求可以獲取到 50 條數(shù)據(jù),那么想要獲取全部怎么辦呢?

簡(jiǎn)單分析一下,每次返回的 Json 字段中有 marker=eyJjIjowLCJrIjoiMi5wbmcifQ== ,當(dāng)點(diǎn)擊加載更多的時(shí)候,這個(gè)marker字段的值會(huì)作為下一次請(qǐng)求的 marker 參數(shù)值(攜帶在URL上),直到請(qǐng)求到最后 marker 為 “” ,也就是說(shuō)當(dāng) marker 值為 “” 的時(shí)候,就是請(qǐng)求到最后的數(shù)據(jù)了。沒(méi)有更多了。

大概了解了之后,就廢話不多說(shuō)了,開(kāi)抓…

開(kāi)始抓取七牛云圖片

定義屬性 header 和 urls,假裝自己是瀏覽器和有cookie信息。

header = { "User - Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36", "Accept": "* / *", "authority": "portal.qiniu.com", "Accept - Encoding": "gzip, deflate", "cookie": "PORTAL_VERSION=v4; _ga=GA1.2.2072818546.1540316980; SSID=VkI4TTMzWE1GUlgzUVRENTZVNTNGQlVQQkVDREZISUpaSDlOWiwxNTQwOTc3OTMzMzk4NDY1MTg3LDViYWVkODRhMWNjZDcyZTJiY2IxMDY2YTlhYWJkOWE2OTliODRkN2EyOGQ2YTUxNWZkYjA5YzZmMTFjZGViMzAyM2JhOGU4NzcyYzU3YTI1ZDIxOWIxMDA4M2UzNGNhNTI3MDhlMmRmOGYxZDdkMDY5YzhkMzU1MzZiM2JlMzUy; PORTAL_UID=1381258456; _gid=GA1.2.1455782183.1540980965; gr_user_id=0dac03ae-d047-4009-8c28-af324447f4b1; qiniu_seo_refer=https://mail.qq.com/; Hm_lvt_204fcf6777f8efa834fe7c45a2336bf1=1540977888,1540980965,1540981082,1540996618; LXB_REFER=mail.qq.com; PORTAL_SESSION=OENCMTBURFVNMjEzV1VaRUdIRk4wTVJFODlMV0QxOEUsMTU0MDk5NjY0NjQwNjIzMzQzMiw5OWFhN2IxNDgwNzhjNDQ5MjRkYTU2ODk1ZDQ4ODQ4ODkxZTQ4Mjgw; _gat=1; __lfcc=1; Hm_lpvt_204fcf6777f8efa834fe7c45a2336bf1=1541004539" } urls = "https://portal.qiniu.com/api/kodo/bucket/files?bucket=blog&delimiter=&limit=50&marker="因?yàn)榈谝淮握?qǐng)求不需要 marker ,所以我們可以給 marker 定義一個(gè)默認(rèn)值,每次請(qǐng)求就更新這個(gè)marker,當(dāng)發(fā)現(xiàn) marker 為空的時(shí)候就不再請(qǐng)求了。

請(qǐng)求到的數(shù)據(jù)只需要圖片名稱和圖片地址就行了,可以用到 json 模塊來(lái)解析 json 數(shù)據(jù),然后將圖片下載到blog文件夾:

marker = "&" os.mkdir("blog") os.chdir("blog") sum = 0; while str(marker).strip()!= '': url = urls + marker res = request_qiniu(url, header) jsondata = json.loads(res.text) marker = jsondata['data']['marker'] for i in range(0,len(jsondata['data']['entries'])): fileurl = jsondata['data']['entries'][i]['dl_remove_attname_url'] filename = jsondata['data']['entries'][i]['key'] with open(filename, 'wb') as f: img = url_open(fileurl).content f.write(img) sum += 1 print("寫(xiě)入數(shù)據(jù),第"+str(sum)+"條:" + filename)這是請(qǐng)求七牛云數(shù)據(jù)的方法,用到了 requests 模塊:

def request_qiniu(url,header): try: response = requests.get(url,headers=header) if response.status_code == 200: return response return None except RequestException: return None運(yùn)行代碼開(kāi)始爬取圖片:

可以看到,創(chuàng)建了文件夾,并且把圖片都下載下來(lái)了:

ok,搞定!




微信搜索學(xué)習(xí)Python的正確姿勢(shì)加入:一個(gè) Pythonner 的聚集地!




ps:還沒(méi)獲取我精心準(zhǔn)備的 Python 電子書(shū)和思維導(dǎo)圖等干貨的可以在我的公眾號(hào)「學(xué)習(xí)Python的正確姿勢(shì)」中發(fā)送 python 免費(fèi)獲取哦!




Python最新全套視頻教程百度網(wǎng)盤(pán)資源

關(guān)鍵詞:相關(guān),圖片,服務(wù),測(cè)試,回收

74
73
25
news

版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點(diǎn)擊下載Chrome瀏覽器
關(guān)閉