python 3 순환 으로 엑셀 파일 을 읽 고 json 작업 에 기록 합 니 다.
excel 내용:
코드:
import xlrd
import json
import operator
def read_xlsx(filename):
# excel
data1 = xlrd.open_workbook(filename)
#
table = data1.sheets()[0]
#
n_rows = table.nrows
data = []
# :wechat_name wechat_id title abstract url time read like number
for v in range(1, n_rows-1):
#
values = table.row_values(v)
#
data.append({'wechat_name': values[0],
'wechat_id': values[1],
'title': values[2],
'abstract': values[3],
'url': values[4],
'time': values[5],
'read': values[6],
'like': values[7],
'number': values[8],
})
#
return data
if __name__ == '__main__':
d = []
# excel
for i in range(1, 16):
d1 = read_xlsx('./excel data/'+str(i)+'.xlsx')
d.extend(d1)
#
#
d = sorted(d, key=operator.itemgetter('time'))
# json
with open('article.json', 'w', encoding='utf-8') as f:
f.write(json.dumps(d, ensure_ascii=False, indent=2))
name = []
# id
f1 = open('wechat_id.txt', 'w')
for i in d:
if i['wechat_id'] not in name:
name.append(i['wechat_id'])
f1.writelines(i['wechat_id'])
f1.writelines('
')
print(len(name))
결과:추가 지식:Python my sql 데이터 읽 기 시간 매개 변수 for 순환 쓰기 Excel 파일
최근 에 Python 을 이용 하여 자동화 표 보 를 실현 할 때 my sql 의 업무 시간 은 템 플 릿 파일 을 읽 는 시간 적 매개 변수 이 고 for 순환 기능 을 사용 해 야 합 니 다.기본 적 인 사 고 는 다음 과 같 습 니 다.
1.출력 파일 의 폴 더 자동 생 성
2.템 플 릿 파일 에 따라 새로 만 든 폴 더 에 새로운 엑셀 파일 을 만 듭 니 다.
3.쓸 때마다 sheet 의 최대 줄 수 max 를 되 돌려 줍 니 다.row,다음 기록 시 최대 줄 의 다음 줄 부터 계속 기록 합 니 다.
4.읽 을 때마다 같은 파일 이 어야 합 니 다.
코드 는 다음 과 같 습 니 다:
#! /usr/bin/env python
# -*- coding:utf-8 -*-
import MySQLdb
from openpyxl import load_workbook
import sys
import time
import os
reload(sys)
sys.setdefaultencoding('utf8')
#
db = MySQLdb.connect(host="localhost", user="zimu", passwd="zimu", db="xxx", port=0000,charset='utf8')
template_file_demo = r"D:\path\demo.xlsx"
# makedirs
output_path = r"D:\output\demo"+"_"+ time.strftime("%Y%m%d", time.localtime()) +"_" + str(int(time.time()))+"\\"
os.makedirs(output_path)
#
book_demo = load_workbook(template_file_demo)
book_demo.save(output_path + "demo" +"_"+time.strftime("%Y%m%d", time.localtime())+".xlsx")
#
demo_file = output_path+"demo"+"_"+time.strftime("%Y%m%d", time.localtime())+".xlsx"
def savedata(start_time,end_time):
demosql = '''select * from demo where start_date<='%s' and end_date>='%s''''%(start_time,end_time)
cursor = db.cursor()
cursor.execute(demosql)
demodata = cursor.fetchall()
demo_book = load_workbook(demo_file)
demosheet = demo_book['demo']
row_t = demosheet.max_row
i = 0
while i < len(demodata):
for j in range(0, 8):
demosheet.cell(row_t + i + 1, j + 1).value = demodata[i][j]
i += 1
demo_book.save(output_path+"demo"+"_"+time.strftime("%Y%m%d", time.localtime())+".xlsx")
book_template = load_workbook(template_file_demo)
timet = book_template[' ']
for t in range(2, timet.max_row + 1): #
savedata(timet.cell(t, 1).value, timet.cell(t, 2).value)
5.템 플 릿 파일 의 시간 매개 변 수 는 다음 과 같 습 니 다.이상 의 python 3 순환 으로 엑셀 파일 을 읽 고 json 작업 을 기록 하 는 것 은 바로 작은 편집 이 여러분 에 게 공유 하 는 모든 내용 입 니 다.참고 하 시기 바 랍 니 다.여러분 들 도 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Jupyter 공식 DockerHub에 대한 메모에 기재되어 있다. base-notebook minimal-notebook scipy-notebook tensorflow-notebook datascience-notebook pyspark-notebook all-s...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.