zoukankan      html  css  js  c++  java
  • Django+python实现网页数据的excel导出

    一直都想做一个网页的excel导出功能,最近抽时间研究了下,使用urllib2与BeautifulSoup及xlwt模块实现

        urllib2这个模块之前有用过,关于BeautifulSoup模块,可参看http://www.bkjia.com/Pythonjc/992499.html  ,介绍的比较详细。

        如下是部分视图代码:

        首先使用urlopen解析网页数据

        

    1
    urlfile = urllib2.urlopen('要解析的url地址')<br>html = urlfile.read()

      创建BeautifulSoup对象 

    1
    soup = BeautifulSoup(html)

     以取表格数据为例,使用findAll取所有tag name='<td>'的数据,并将其内容加到列表中。

    1
    2
    3
    result=[]
    for line in soup.findAll('td'):
        result.append(line.string)

     接下来就是使用xlwt模块生成excel的实现

       创建excel文件

    1
    2
    workbook = xlwt.Workbook(encoding = 'utf8')
    worksheet = workbook.add_sheet('My Worksheet')

     向excel文件插入数据

    1
    2
    for tag in range(0,8):
        worksheet.write(0, tag, label = result[tag])

    将结果返回到网页,即可在网页生成excel

    1
    2
    3
    4
    response = HttpResponse(content_type='application/msexcel')
    response['Content-Disposition'= 'attachment; filename=example.xls'
    workbook.save(response)
    return response
  • 相关阅读:
    DDD~大话目录
    基于DDD的.NET开发框架-DDD经典分层
    补习知识:Entity Framework Code First属性映射约定
    一个官翻教程集合:ASP.NET Core 和 EF Core 系列教程
    补知识:EntityFramework Core映射关系详解
    关于this的问题
    promise
    js的类型转换
    不要在块内声明一个函数
    let和var
  • 原文地址:https://www.cnblogs.com/crystaltu/p/9228429.html
Copyright © 2011-2022 走看看