一、安装xlrd模块

   到python官网下载http://pypi.python.org/pypi/xlrd模块安装,前提是已经安装了python 环境。

二、示例代码:一看便明白(其中需要修改django的库)

 

import xlrd
from django.http import HttpResponse
from django.shortcuts import render_to_response
from django.template.context import RequestContext
from django.contrib.auth.models import User
import datetime

def create_excel_user(username,password,email):
    user = User()
    user.username = username
    user.email = email
    user.set_password(password)
    user.is_staff = True
    user.is_active = True
    user.save()
    
def d_excel(request):
    """
    before use this method you must add force_insert=False force_update=False to C:\Python27\Lib\site-packages\django\db\models\base.py ,
    the loacltion is 458 459 474 475 ,
    anther add url(r'^excel/$','ziyuan.p_excel.d_excel',name="excel"), to url
    """
    data = xlrd.open_workbook('c://user.xlsx')
    now = datetime.datetime.now()
    table = data.sheets()[0] 
    nrows = table.nrows
    
    user_list = []
    error_list = []
    username_list = []
    email_list = []
    for i in range(nrows):
        ud =  table.row_values(i)
        ud.append(i)
        username =  ud[0]
        email =  ud[1]
        user_list.append(ud)
       
    users = User.objects.all()
    for u in users:
        uname = u.username
        username_list.append(uname)
    for e in users:
        email = e.email
        email_list.append(email)
        
    for user_data in user_list:
        uname =  str(user_data[0])
        emai =  str(user_data[1])
        pasd =  str(user_data[2])
        num = user_data[3]
        
        if uname in username_list:
            uname = uname + "2"
        if emai in email_list:
            emai = "2" + emai 
            
        try:
            create_excel_user(uname,pasd,emai)
            print "the number" + num + ":" + uname + "has create success"
        except:
            error = {}
            error[num] = username
            error_list.append(error) 

    print error_list
    return render_to_response('ziyuan/excel.html',context_instance=RequestContext(request))