3v324v23 commited on
Commit
89a75e2
1 Parent(s): 1139d39

修复extract_folder_path被定位到根目录的bug

Browse files
crazy_functions/解析项目源代码.py CHANGED
@@ -292,13 +292,14 @@ def 解析任意code项目(txt, llm_kwargs, plugin_kwargs, chatbot, history, sys
292
  yield from update_ui(chatbot=chatbot, history=history) # 刷新界面
293
  return
294
  # 若上传压缩文件, 先寻找到解压的文件夹路径, 从而避免解析压缩文件
295
- maybe_dir = [f for f in glob.glob(f'{project_folder}/**') if os.path.isdir(f)]
296
- extract_folder_path = maybe_dir[0].replace('\\', '/') if len(maybe_dir) != 0 else ""
 
 
 
297
  # 按输入的匹配模式寻找上传的非压缩文件和已解压的文件
298
- file_manifest = [f for f in glob.glob(f'{project_folder}/**') if os.path.isfile(f) and not re.search(pattern_except, f)] + \
299
- [f for _ in pattern_include for f in glob.glob(f'{extract_folder_path}/**/{_}', recursive=True) if "" != extract_folder_path and \
300
- os.path.isfile(f) and (not re.search(pattern_except, f) or _.endswith('.' + re.search(pattern_except, f).group().split('.')[-1]))]
301
-
302
  if len(file_manifest) == 0:
303
  report_execption(chatbot, history, a = f"解析项目: {txt}", b = f"找不到任何文件: {txt}")
304
  yield from update_ui(chatbot=chatbot, history=history) # 刷新界面
 
292
  yield from update_ui(chatbot=chatbot, history=history) # 刷新界面
293
  return
294
  # 若上传压缩文件, 先寻找到解压的文件夹路径, 从而避免解析压缩文件
295
+ maybe_dir = [f for f in glob.glob(f'{project_folder}/*') if os.path.isdir(f)]
296
+ if maybe_dir[0].endswith('.extract'):
297
+ extract_folder_path = maybe_dir[0]
298
+ else:
299
+ extract_folder_path = project_folder
300
  # 按输入的匹配模式寻找上传的非压缩文件和已解压的文件
301
+ file_manifest = [f for pattern in pattern_include for f in glob.glob(f'{extract_folder_path}/**/{pattern}', recursive=True) if "" != extract_folder_path and \
302
+ os.path.isfile(f) and (not re.search(pattern_except, f) or pattern.endswith('.' + re.search(pattern_except, f).group().split('.')[-1]))]
 
 
303
  if len(file_manifest) == 0:
304
  report_execption(chatbot, history, a = f"解析项目: {txt}", b = f"找不到任何文件: {txt}")
305
  yield from update_ui(chatbot=chatbot, history=history) # 刷新界面