|
@@ -21,7 +21,7 @@ def column_letter_to_index(col_letter):
|
|
|
"""将Excel列字母转换为0基索引"""
|
|
"""将Excel列字母转换为0基索引"""
|
|
|
return sum((ord(c) - ord('A') + 1) * (26 ** i) for i, c in enumerate(reversed(col_letter.upper()))) - 1
|
|
return sum((ord(c) - ord('A') + 1) * (26 ** i) for i, c in enumerate(reversed(col_letter.upper()))) - 1
|
|
|
|
|
|
|
|
-def process_csv(df, columns, use_letters, processor):
|
|
|
|
|
|
|
+def process_csv(df, columns, use_letters, processor, start_row=0):
|
|
|
"""处理CSV数据框中的指定列"""
|
|
"""处理CSV数据框中的指定列"""
|
|
|
# 获取要处理的列的索引
|
|
# 获取要处理的列的索引
|
|
|
if use_letters: # 如果使用列字母
|
|
if use_letters: # 如果使用列字母
|
|
@@ -30,7 +30,7 @@ def process_csv(df, columns, use_letters, processor):
|
|
|
indices = [int(col) for col in columns]
|
|
indices = [int(col) for col in columns]
|
|
|
|
|
|
|
|
# 遍历每一行并处理
|
|
# 遍历每一行并处理
|
|
|
- for i in range(len(df)):
|
|
|
|
|
|
|
+ for i in range(start_row, len(df)):
|
|
|
row = df.iloc[i].tolist()
|
|
row = df.iloc[i].tolist()
|
|
|
processed_row = process_row(row, indices, processor)
|
|
processed_row = process_row(row, indices, processor)
|
|
|
df.iloc[i] = processed_row
|
|
df.iloc[i] = processed_row
|
|
@@ -45,10 +45,10 @@ def read_and_process_csv(input_file, output_file, need_search_url_columns, asin_
|
|
|
df = pd.read_csv(input_file, encoding='cp936', keep_default_na=False)
|
|
df = pd.read_csv(input_file, encoding='cp936', keep_default_na=False)
|
|
|
|
|
|
|
|
# 处理需要添加搜索链接的列
|
|
# 处理需要添加搜索链接的列
|
|
|
- process_csv(df, need_search_url_columns, use_letters, lambda value: create_hyperlink(value, base_url))
|
|
|
|
|
|
|
+ process_csv(df, need_search_url_columns, use_letters, lambda value: create_hyperlink(value, base_url), start_row)
|
|
|
|
|
|
|
|
# 处理ASIN列
|
|
# 处理ASIN列
|
|
|
- process_csv(df, asin_columns, use_letters, create_asin_link)
|
|
|
|
|
|
|
+ process_csv(df, asin_columns, use_letters, create_asin_link, start_row + 1)
|
|
|
|
|
|
|
|
# 将处理后的数据写入新的CSV文件
|
|
# 将处理后的数据写入新的CSV文件
|
|
|
df.to_csv(output_file, index=False, encoding='utf-8')
|
|
df.to_csv(output_file, index=False, encoding='utf-8')
|