环境: Python 3.5
使用:从xlsx,csv等文件中按‘行’读取数据,并调用cb_func回调函数或on_process_row_data成员方法进行数据行的处理。
这是一个基类。仅作示范!
如果需要,请根据具体的数据行进行cb_func或on_process_row_data的重载!
代码:
#!/usr/bin/python3
# -*- coding: utf-8 -*-
#
# 数据表(xlsx, csv)读取操作
# mylaf
# 2020-04-09 1522
#
import pandas as pd
def urllib_download(url, file, try_num = 0):
#import urllib
import time
from urllib.request import urlretrieve
if try_num < 0:
return -1
time.sleep(0.001)
try:
urlretrieve(url, file)
return 0
except:
print('HTTPError: url=', url, ',try', try_num, '...')
try_num -= 1
return urllib_download(url, file, try_num)
class RowItemProcessor(object):
'''
从指定数据文件中读取数据行,并逐行处理
'''
# 初始化:啥也不干
def __init__(self) -> Non