import urllib.parse
import sys,os
import time,subprocess

EXITFLAG=""
ECHOTIMEOUT=5
def start(url):
    print("正在打开url："+url)
    # 判断是否为目录
    if os.path.exists(url):
        print("识别为本地路径，使用系统默认方式打开...")
        os.startfile(url)
    else:
        # 如果是文件，使用 start 打开
        #exeurl=f'start "" "cmd /c {url}   & echo --------脚本运行结束！--------------- & timeout /t 5 &"'
        exeurl=f'start "" "{url}"'
        #startstr(exeurl)
        subprocess.call(exeurl, shell=True)
        
        
# ----------------以上是代码区，在线处理文件下载用的--------------------------

#无参数时的出错处理
if len(sys.argv) >=2:
   inputstr=sys.argv[1]
else:
   inputstr="r34:notepad.exe"
   # inputstr="r34:ipconfig"
#    inputstr="r34:C:/"
#    inputstr="r34:%r34%\分类工作\行政_人文行政杂事\人文行政杂事.xlsm"
   inputstr="r34:index"
   # inputstr="cmd://2021%E5%B9%B4%E5%BA%A6%E7%A7%91%E7%A0%94%E6%88%90%E6%9E%9C%E7%99%BB%E8%AE%B0%E5%B7%A5%E4%BD%9C"
#    print("默认输入为r34://notepad.exe 方便调试。\n")
   # inputstr=r"cmd://li://%lilyfolder%\%E5%88%86%E7%B1%BB%E5%B7%A5%E4%BD%9C\%E7%A7%91%E7%A0%94_%E5%AD%A6%E6%9C%AF%E8%AE%B2%E5%BA%A7\%E4%BA%BA%E6%96%87%E5%AD%A6%E6%9C%AF%E8%AE%B2%E5%BA%A7.xlsm"



#去除cmd://这几个字
input1=inputstr[4:]
input1=input1.replace("/","\\")
inputfile=urllib.parse.unquote(input1)

# print(inputfile)
#time.sleep(1)

#环境变量及\\变量的处理
realfolderpath=""
(filename, extension) = os.path.splitext(inputfile)
# print(inputfile)
# time.sleep(5)

#处理没有后缀的情况
if len(extension) < 1:
   if inputfile[-1:] =="\\":
      inputfile=inputfile[:-1]
   #print("inputfile1:"+ inputfile)
   #time.sleep(3)
   #这里处理文件夹，
            
#处理文件，指没有\的情况
# print("处理文件，指没有\的情况")
keyword=inputfile[0:2]
pathvalue=inputfile[3:]
# startstr(inputfile)

if exitflag == "true":
   print("不执行")
   sys.exit()

#time.sleep(5)
(filename, extension) = os.path.splitext(inputfile)
wholepath=os.path.expandvars(inputfile)
jb=inputfile
print(inputfile[0:3])

if inputfile[0:5]=="index":
    file = os.path.expanduser(r'~/Desktop/index/index.html')
    subprocess.call(['notepad', file])
    sys.exit()
else:
    print("0.index 提前处理失败")


if os.path.exists(wholepath):
    start(wholepath)
    sys.exit()
else:
    print("1.输入不是文件或目录！")



start(inputfile)
print("2.已直接运行代码："+inputfile)
# startstr(inputfile)

print("------------------------------------------------------------------------")


