Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
了十多年的新浪博客于2019年5月突然宣布“相冊”功能下線,真是讓人措手不及!!
公告鏈接:http://control.blog.sina.com.cn/riaapi/photoblog/photo_down.html
下線也就罷了,竟然只是給了一個鏈接讓自行一張一張的進行照片下載!!簡直了……
捯飭了一晚上,找了各種方法終于解決新浪博客相冊照片批量下載的方法,下面給大家一步步說明:
下載這個的原意是讓你一個個的復制粘貼鏈接,一張張圖片自行下載
到這里如果以前的博主上傳的照片過多的話,就會很麻煩,像我就有近三百張照片!
到了這里我們進行Ctrl+A全選里面所有內容進行復制操作;
粘貼——過濾——復制
粘貼后,這里大小顯示0B不用管。
小提示:圖片下載后,可能無后綴名,大家打開時默認用圖片工具打開就可以了!!
如有疑問大家可以留言評論,我會一一給大家解答。
文主要講解移動端頁面上能上傳多個本地圖片的例子,在一些發布說說的頁面上能用得到,有興趣的小伙伴可以一起看看!
效果圖:
html:
css:
css樣式方面就不多說了,自己可以美化自己的布局,重點還是js中的實現代碼:如下
、寫代碼背景:
今天閑來無事,想弄點PPT圖片放到電腦,方便以后使用,故去百度查找一些PPT圖片網站,發現PPT圖片網址http://www.pptbz.com/pptshucai/pptbjtp/index.html的圖片質量不錯,故嘗試通過python的爬蟲功能爬取圖片。
2、對被爬取網址進行測試查看:
在瀏覽器輸入圖片網址http://www.pptbz.com/pptshucai/pptbjtp/index.html,依次進行以下操作:
①按住f12
②按住F5
③點擊Network里的最左邊的↖箭頭
④點擊相應的圖片
⑤查看圖片所在的標簽信息
如下圖所示:
http://www.pptbz.com/pptshucai/pptbjtp/index.htmlw
得出結論:
①所有的圖片標簽都在img標簽里,所有的圖片標簽的網址都是img標簽的src屬性值,故需要對img標簽的src屬性值進行解析。
②首頁的網址沒有頁碼1,其他頁的網址有包含頁碼,總共5頁有圖片。
3、開始在pycharm里編寫代碼:
代碼如下:
#1、導入相應的模塊 import requests import random from bs4 import BeautifulSoup import os #2、定義對網站進行get請求的函數 def downpic(page): agent1={"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.70 Safari/537.36"} # 設定請求頭的值agent1 agent2={"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36"} # 設定請求頭的值agent2 agent3={"User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.62 Safari/537.36"} # 設定請求頭的值agent3 list1=[agent1, agent2, agent3] # 設置3個請求頭組成的列表,并賦值給列表list1 agent=random.choice(list1) # 請求頭的值agent從列表list1里隨機選擇一個 try: if page==1: #假如頁碼為1時 url="http://www.pptbz.com/pptshucai/pptbjtp/index.html" #則設置相應的url網址 elif page > 1: #假如頁碼大于1時 url="http://www.pptbz.com/pptshucai/pptbjtp/index_" + str(page) + ".html" #則設置相應的url網址加上頁碼 response=requests.get(url,headers=agent) #偽裝瀏覽器對網站進行get請求,并將請求結果賦值給response response.encoding=response.apparent_encoding #根據內容解析出網頁的編碼格式并賦值給response.encoding html=response.text #將網頁的源代碼賦值給html soup=BeautifulSoup(html,"html.parser") #對html源代碼進行html.parser解析,并賦值給soup images=soup.findAll("img") #查找soup里的所有的img圖片標簽 list1=[] #設置空列表list1,用來存放url網址 for image in images: #遍歷所有的圖片標簽 if "http"is image.attrs["src"]: #假如圖片標簽的src屬性值里包含http list1.append(image.attrs["src"]) #則將圖片的src屬性值添加到list1列表 else: #否則 list1.append("http://www.pptbz.com"+image.attrs["src"]) #在圖片標簽的src屬性值前加上網頁的主頁地址,并添加到列表list1 path="F://PPT圖片//" #設置本機保存圖片的文件夾位置 if not os.path.exists(path): #假如不存這個路徑時 os.mkdir(path) #新建這個路徑 i=0 #定義i初始值為0 for imgurl in list1: #遍歷列表list里的所有圖片地址 response1=requests.get(url=imgurl,headers=agent) #偽裝瀏覽器對網站進行get請求,并將請求結果賦值給response1 response1.encoding=response1.apparent_encoding #根據內容解析出網頁的編碼格式并賦值給response1.encoding content1=response1.content #將網頁的二進制源代碼賦值給content1 abspath=path+str(page)+str(i)+".jpg" #設置保存圖片的絕對路徑 i=i+1 #每遍歷1次,i自增1 with open(abspath,"wb") as f: #打開文件abspath路徑,設置為f,并進行寫入操作 f.write(content1) #在f里面寫入網頁源代碼的二進制格式內容 f.close() #關閉文件 print("圖片網址為:{}的第{}頁圖片下載完成,下載到本機的路徑是:{}".format(url,page,abspath)) #打印圖片網址為:的第多少頁圖片下載完成,下載到本機的路徑是: except: #否則當接收到錯誤反饋時 print("爬取失敗") #打印爬取失敗 finally: #最后 print("ppt圖片網站的第"+str(page)+"頁爬取結束") #打印ppt圖片網站的第多少頁爬取結束 #3、對下載圖片函數進行調用 if __name__=='__main__': for page in range(1,6): #核實發現共計5頁圖片,故從第一頁開始爬取一直爬取到第5頁,所以需要對頁碼page進行從1-5的遍歷 downpic(page) #調用下載圖片的函數,參數是頁碼
pycharm的代碼運行結果如下:
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//10.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//11.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//12.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//13.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//14.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//15.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//16.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//17.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//18.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//19.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//110.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//111.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//112.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//113.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//114.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//115.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//116.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//117.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//118.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index.html的第1頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//119.jpg
ppt圖片網站的第1頁爬取結束
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//20.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//21.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//22.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//23.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//24.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//25.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//26.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//27.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//28.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//29.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//210.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//211.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//212.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//213.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//214.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//215.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//216.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//217.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//218.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_2.html的第2頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//219.jpg
ppt圖片網站的第2頁爬取結束
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//30.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//31.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//32.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//33.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//34.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//35.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//36.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//37.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//38.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//39.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//310.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//311.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//312.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//313.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//314.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//315.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//316.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//317.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//318.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_3.html的第3頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//319.jpg
ppt圖片網站的第3頁爬取結束
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//40.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//41.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//42.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//43.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//44.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//45.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//46.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//47.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//48.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//49.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//410.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//411.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//412.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//413.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//414.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//415.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//416.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//417.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//418.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_4.html的第4頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//419.jpg
ppt圖片網站的第4頁爬取結束
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_5.html的第5頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//50.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_5.html的第5頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//51.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_5.html的第5頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//52.jpg
圖片網址為:http://www.pptbz.com/pptshucai/pptbjtp/index_5.html的第5頁圖片下載完成,下載到本機的路徑是:F://PPT圖片//53.jpg
ppt圖片網站的第5頁爬取結束
圖片示例如下:
pycharm編輯器里代碼和代碼運行結果
保存到本機的圖片
*請認真填寫需求信息,我們會在24小時內與您取得聯系。