qq_35429908 2017-07-31 13:18 采纳率: 0%
浏览 1323

python获取数据后导入excel问题?

图片说明
我想根据爬取出来的数据,导入excel中,代码如下:
import requests
import os
import re
from openpyxl.workbook import Workbook

url='http://www.shfe.com.cn/data/dailydata/kx/kx20170714.dat'
data_list=requests.get(url).text
for str_data_list in data_list.split(","):
pattern=re.compile(r'[^\w]')
tihuan=re.sub(pattern,",",str_data_list)
keyword=["DELIVERYMONTH","OPENPRICE","HIGHESTPRICE","LOWESTPRICE","CLOSEPRICE"]
tihuan = list(tihuan.split(','))
tihuan = list(filter(bool, tihuan))
for i in range(len(tihuan)):
if tihuan[i] in keyword:
try:
item = tihuan[i+1]
except IndexError:
item = None
wb=Workbook()
ws=wb.worksheets[0]
arr1=[]
arr2=[]
for row in range(1,10):
a1=ws.cell(row=row,column=1,value="{0}".format(tihuan[i]))
a2=ws.cell(row=row,column=2,value="{0}".format(item))
if a1:
arr1.append(a1)
if a2:
arr2.append(a2)
wb.save('test.xlsx')
但是得到的结果却是:
图片说明
想不明白问题在哪里,烦请帮忙下,不胜感谢!

  • 写回答

1条回答

  • crazyskady 2017-08-01 14:12
    关注

    帖代码的时候建议区分好缩进再帖,python的代码依靠缩进来判断逻辑。

    按照你的代码,下一段的代码中的i和item,应该是没有赋值,而是使用的上一个for循环之后的最后一个值,所以导致了这个现象:
    for row in range(1,10):
    a1=ws.cell(row=row,column=1,value="{0}".format(tihuan[i]))
    a2=ws.cell(row=row,column=2,value="{0}".format(item))

    评论

报告相同问题?

悬赏问题

  • ¥35 平滑拟合曲线该如何生成
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 自己瞎改改,结果现在又运行不了了
  • ¥15 链式存储应该如何解决
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站