代码之家  ›  专栏  ›  技术社区  ›  SIM

调度器运行python脚本,但不生成csv文件

  •  1
  • SIM  · 技术社区  · 7 年前

    当我使用相同的 windows task scheduler ,我可以看到 command prompt

    我错过什么了吗?

    当脚本通过运行时,我应该进行哪些可能的更改以获取csv文件 .bat windows任务计划程序 ?

    蝙蝠先生 包含:

    @echo off
    "C:\Users\WCS\AppData\Local\Programs\Python\Python36-32\python.exe" "C:\Users\WCS\AppData\Local\Programs\Python\Python36-32\examplescript.py"
    

    examplescript.py 包含:

    import csv
    import requests
    from urllib.parse import urljoin
    from bs4 import BeautifulSoup
    
    url = "https://www.janglo.net/component/option,com_sobi2/"
    
    def get_info(link):
        res = requests.get(url)
        soup = BeautifulSoup(res.text,"lxml")
        for items in soup.select("#sobi2CatListSymbols .sobi2SubcatsListItems a[title]"):
            if items.text=="Tutors":
                ilink = f"{urljoin(url,items.get('href'))}"
        return ilink
    
    def get_links(tlink):
        linklist = []
        res = requests.get(tlink)
        soup = BeautifulSoup(res.text,"lxml")
        for item in soup.select(".sobi2ItemTitle a"):
            linklist.append(urljoin(url,item.get("href")))
        return linklist
    
    if __name__ == '__main__':
        with open("task_scheduler.csv","a",newline="") as infile:
            writer = csv.writer(infile)
            item = get_info(url)
            for nlink in get_links(item):
                print(nlink)
                writer.writerow([nlink])
    

    "C:\Users\WCS\AppData\Local\Programs\Python\Python36-32\test_schedule.bat"
    

    enter image description here

    1 回复  |  直到 7 年前
        1
  •  3
  •   Martijn Pieters    7 年前

    您的代码将写入 ,因为它打开的文件名没有路径。地址 .bat 文件不确定 正在运行的代码的名称。

    您没有指定工作目录;我希望这会被设定为 开始 字段,以便在中创建文件 default location , %Windir%\System32\

    或者在 开始 要在中创建的CSV文件的字段,请使用批处理脚本 cd

    例如,如果批处理脚本首次运行 cd /d %~dp0

    推荐文章