GVKun编程网logo

如何在Windows中执行Python脚本?(windows下执行python脚本)

18

本文将介绍如何在Windows中执行Python脚本?的详细情况,特别是关于windows下执行python脚本的相关信息。我们将通过案例分析、数据研究等多种方式,帮助您更全面地了解这个主题,同时也将

本文将介绍如何在Windows中执行Python脚本?的详细情况,特别是关于windows下执行python脚本的相关信息。我们将通过案例分析、数据研究等多种方式,帮助您更全面地了解这个主题,同时也将涉及一些关于python脚本在Windows中以什么用户身份运行?、Windows 任务调度程序定时执行Python脚本、Windows创建定时任务执行Python脚本、使用Python脚本在windows屏幕找图的知识。

本文目录一览:

如何在Windows中执行Python脚本?(windows下执行python脚本)

如何在Windows中执行Python脚本?(windows下执行python脚本)

我有一个简单的脚本blah.py(使用Python 2):

import sysprint sys.argv[1]

如果我通过以下方式执行脚本:

python c:/..../blah.py argument

它输出参数,但是如果我通过以下方式执行脚本:

blah.py argument

发生错误:

IndexError ...

因此参数不会传递给脚本。

PATH中的python.exe。路径中也包含blah.py的文件夹。
python.exe是执行* .py文件的默认程序。

问题是什么?

答案1

小编典典

执行脚本而不在前面键入“ python”时,你需要了解有关Windows如何调用程序的两件事。首先是找出Windows认为的文件类型:

  C:\> assoc .py    .py = Python.File

接下来,你需要了解Windows如何使用该扩展名执行操作。它与文件类型“ Python.File”相关联,因此此命令显示了将要执行的操作:

    C:\> ftype Python.File    Python.File =“ c:\ python26 \ python.exe”“%1”%*

因此,在我的机器上,当我键入“ blah.py foo”时,它将执行此确切命令,与我自己键入完整内容相比,结果没有差异:

    “ c:\ python26 \ python.exe”“ blah.py” foo

如果你键入相同的内容(包括引号),则得到的结果与键入“ blah.py foo”时的结果相同。现在,你可以自己解决其余的问题。

(或在你的问题中发布更多有用的信息,例如在控制台中看到的实际剪切和粘贴的副本。请注意,进行此类操作的人会投票给他们的问题进行投票,他们会获得声誉得分,还有更多的人可能会为他们提供良好的答案。)

来自评论:
即使assoc和ftype显示正确的信息,也有可能参数被剥离。在这种情况下可能有帮助的是直接修复Python的相关注册表项。设置

HKEY_CLASSES_ROOT\Applications\python26.exe\shell\open\command

关键:

"C:\Python26\python26.exe" "%1" %*

以前很可能%*不见了。同样,设置

 HKEY_CLASSES_ROOT\py_auto_file\shell\open\command

python脚本在Windows中以什么用户身份运行?

python脚本在Windows中以什么用户身份运行?

我正在尝试让python删除一些目录,但出现访问错误。我认为python用户帐户没有权限吗?

WindowsError: [Error 5] Access is denied: ''path''

是我运行脚本时得到的。
我试过了

shutil.rmtree  os.remove  os.rmdir

它们都返回相同的错误。

答案1

小编典典

即使将文件和目录设置为“只读”,即使我们刚刚复制了文件和目录,我们也遇到了问题。shutil.rmtree()为您提供某种异常处理程序来处理这种情况。您调用它并提供一个异常处理程序,如下所示:

import errno, os, stat, shutildef handleRemoveReadonly(func, path, exc):  excvalue = exc[1]  if func in (os.rmdir, os.remove) and excvalue.errno == errno.EACCES:      os.chmod(path, stat.S_IRWXU| stat.S_IRWXG| stat.S_IRWXO) # 0777      func(path)  else:      raiseshutil.rmtree(filename, ignore_errors=False, onerror=handleRemoveReadonly)

您可能想尝试一下。

Windows 任务调度程序定时执行Python脚本

Windows 任务调度程序定时执行Python脚本

Windows 任务调度程序(Task Scheduler)可以定时执行程序,本文分享使用Task Scheduler定时执行Python脚本的两种方法。

在控制面版->管理员工具中打开 Task Scheduler :

在Task Scheduler Library中创建一个新的文件夹demo,右击,点击“Create Basic Task”,打开创建任务向导:

step1:输入任务的名称

step2:设置触发任务的周期

step3:进一步设置触发任务的周期

step4:设置任务的动作

step5:设置程序或脚本

方法1:使用Python编译器

注意,这一步非常重要,需要填写三个参数:

  • Program/script:填写 Python编译器的名称 python.exe
  • Add arguments:打算执行的Python脚本的完整路径,D:\PyCodes\test.py
  • Start in: 填写Python编译器的目录,上图中,Python编译器的完整路径是“C:\Python37\\python.exe”,

注意:对于Start in参数,可以忽略,在 Program/script 把Python编译器的完整路径填写上去。

方法2:使用.bat脚本

另外一种方式是执行 .bat  脚本,例如,创建一个 demo.bat 文件,文件内容是:

也可以在 demo.bat 脚本中添加 pause 命令,以避免在执行后关闭命令提示符。

 

 最后,在Program/script 参数中填写 demo.bat 脚本的完整路径:

step6:设置Task的属性

 

 

参考文档:

 

Windows创建定时任务执行Python脚本

Windows创建定时任务执行Python脚本

Windows创建定时任务执行Python脚本

一、环境

win7 + Python3.6

二、步骤

1,在Windows开始菜单中搜索“计划任务”,并且点击打开“计划任务”:

2、点击“创建基本任务”:

3,给该基本任务命名,并点击“下一步”:

4,选择任务开始时间,在此我选择“每天”,并点击“下一步”:

设置任务开始的时间和间隔,点击“下一步”:

6、选择“启动程序”,并点击“下一步”:

7、在“程序或脚本”中填写Python解析器的绝对路径,在“添加参数”中填写你所需要定时执行的Python程序的绝对路径,在“起始于”中填写Python解析器所在的文件夹的绝对路径,最后点击“下一步”:

8、勾选图中的选项,并点击“完成”:

9,根据自己的个人要求设置对应的属性,最后点击“确定”:

10:输入用户密码,点击“确定”,到此该基本任务就创建完成了:

 

使用Python脚本在windows屏幕找图

使用Python脚本在windows屏幕找图

Python实现windows屏幕找图

import win32gui
hwnd_title = dict()
def get_all_hwnd(hwnd,mouse):
  if win32gui.IsWindow(hwnd) and win32gui.IsWindowEnabled(hwnd) and win32gui.IsWindowVisible(hwnd):
    hwnd_title.update({hwnd:win32gui.GetWindowText(hwnd)})


from PyQt5.QtWidgets import QApplication
from PyQt5.QtGui import *
import win32gui
import sys

import time
import win32gui, win32ui, win32con, win32api
from send_text import send_message_to_slack
import random
import pyscreenshot as ImageGrab
import sys
import numpy as np
import time
from cv2 import cv2 
from time import sleep

def get_pay_keyboard_number_location(impath, target,fit_num): #fit_num是匹配度,如 0.95,0.85

        print("start find pic")
        positions = {}

        start = time.time()
        img_rgb = cv2.imread(impath)

        teNum = "done"

        template = cv2.imread(target)
        h, w = template.shape[:-1]

        res = cv2.matchTemplate(img_rgb, template, cv2.TM_CCOEFF_NORMED)
       
        threshold = fit_num  # 匹配度参数,1为完全匹配
        loc = np.where(res >= threshold)
        if len(loc) > 0:
            # positions[teNum] = zip(*loc[::-1])[0]  # python2的写法
            
            zipped = zip(*loc[::-1])  #list[::-1] 相当于起点为最后的一个,终点为第一个,然后一次减少一个
            positions[teNum] = (list(zipped))[0]
            
        else:
            print("Can not found pic: ")

        end = time.time()
        print(end - start)

        return positions[teNum]  








def zhaotu(fenbianlv):

    impath1 = ''screenshot.jpg''
    targetPath_a = "yellow" +str(fenbianlv)+''.jpg''


    win32gui.EnumWindows(get_all_hwnd, 0)

    hwnd = win32gui.FindWindow(None, ''C:\Windows\system32\cmd.exe'')
    app = QApplication(sys.argv)
    screen = QApplication.primaryScreen()

    while 1>0:

                                  

        img = screen.grabWindow(hwnd    ).toImage()
        img.save("screenshot.jpg")



        try:
            ls = get_pay_keyboard_number_location(impath1, targetPath_a,0.98) #找目标图
        

        except:
            pass
          
        sleep(5)


zhaotu(1792)


Flutter 写的app, 需要源码可以私信~~

  • 简繁火星字体转换
  • 哄女友神器
  • 号码测吉凶
  • 电视节目直播表

最好的笔记软件

我们今天的关于如何在Windows中执行Python脚本?windows下执行python脚本的分享就到这里,谢谢您的阅读,如果想了解更多关于python脚本在Windows中以什么用户身份运行?、Windows 任务调度程序定时执行Python脚本、Windows创建定时任务执行Python脚本、使用Python脚本在windows屏幕找图的相关信息,可以在本站进行搜索。

本文标签: