使用openpyxl库从HTTP响应中解析xlsx表

时间:2015-12-08 14:20:00

标签: python django openpyxl

我正在编写一个用于测试Excel工作表解析的测试用例。 我尝试使用openpyxl将response.content解析为对象列表。 我从响应头中提取了文件名并转换为File like object。 load_workbook()不接受文件名。

(image of user) img src="\Content\Imgs\Img4) Pedro Filipe 
Hello

基本上我试图在我的测试用例中验证文件的内容。 有没有办法做到这一点?

1 个答案:

答案 0 :(得分:1)

# response contains the generated file using openpyxl
response = self.client.post(change_url, ・・・・・

当你得到上面的响应时,“response.content”是字节类型的,所以你可以用 BytesIO 将它加载到缓冲区中。从上面继续,写:

from io import BytesIO
file_like_object = BytesIO(response.content)
(from openpyxl import load_workbook) # if this line is needed...
wb = load_workbook(file_like_object)

现在你可以使用这个“wb”进行一般的 openpyxl 操作