python-26:建立一個文件夾存放圖片

前面已經學習了怎麼下載圖片以及怎麼下載多張圖片,這僅僅只是一個開始,後面咱們下載的圖片會比這些多得多,因此我但願我下載的圖片能分門別類的保存,我不喜歡一打開個人主目錄就被一大堆圖片刷屏,因此,我須要在程序中建立文件夾來保存我下載的圖片
python中對文件,對目錄的操做有不少種,可是咱們如今用不到這麼多,咱們如今要作的僅僅是使用python來建立一個文件夾,這裏給你們一個網址,包含了大部分的文件操做,有興趣能夠看一下:
http://www.runoob.com/python/python-files-io.html
其實不看也沒什麼問題,咱們使用到的只是其中的 mkdir 方法而已
在python中,咱們使用os模塊的mkdir()方法建立一個新的目錄
先來看看函數原型,仍是help命令 help(os.mkdir)
html

咱們能夠看到,mkdir 有兩個參數
1. path 新目錄的路徑+名稱
2. mode 是該目錄的權限
其中 [ ] 括起來的是可選的參數,默認爲0777
咱們來看看怎麼建立一個目錄python

#!/usr/bin/env python
# -*- coding: UTF-8 -*-
__author__ = '217小月月坑'

# os是系統庫,引入這個庫可使用系統的命令
import os

# 在當前目錄下建立文件,haha是目錄名
os.mkdir('haha')

# 在指定的目錄下建立文件,r''使字符轉義,hehe是目錄名
os.mkdir(r'/home/ym/hehe')

這只是最簡單的功能,咱們要作的要比這個複雜一些
極視界網站上的圖片是按相冊來存放的,因此爲了能更加有序整齊的存放圖片,咱們須要以相冊的名字來存放文件夾
這就要求咱們先在極視界首頁的網頁源碼中獲取相冊的名字,而且以這個名字來建立文件夾
這裏仍是重複前面所作的事情,分析源碼加入RE,可是爲了加深印象,最好仍是本身再走一遍流程
最終實現的代碼是這樣的
函數

#!/uer/bin/env python
# -*- coding: UTF-8 -*-
__author__ = '217小月月坑'
'''
獲取網頁源碼中的相冊名字並用這個名字建立文件夾
'''

import urllib2
import re
import os

url = 'http://product.yesky.com/more/506001_31372_photograph_1.shtml'
user_agent = 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:40.0) Gecko/20100101 Firefox/40.0'
headers = {'User-Agent':user_agent}

try:
    request = urllib2.Request(url,headers=headers)
    response = urllib2.urlopen(request)
    conents = response.read().decode("gbk")
    # RE獲取相冊首頁和相冊名字
    pattern = re.compile(r'<dt><a href="(.*?)" title="(.*?)"',re.S)
    items = re.findall(pattern,conents)
    for item in items:
        print item[0],item[1]
        # 設置文件夾的路徑,做爲參數傳給mkdir函數使用,item[1]是相冊名字
        path = r'/home/ym/test/'+item[1]
        # 建立文件夾
        os.mkdir(path)
except urllib2.URLError,e:
    if hasattr(e,"code"):
        print e.code
    if hasattr(e,"reason"):
        print e.reason
相關文章
相關標籤/搜索