Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python定时子进程.Popen_Python_Loops_Timer_Subprocess_Reload - Fatal编程技术网

Python定时子进程.Popen

Python定时子进程.Popen,python,loops,timer,subprocess,reload,Python,Loops,Timer,Subprocess,Reload,我有下面的代码从webscrape获取数据。 我刚刚学会了如何使用电脑 subprocess.Popen subprocess.Popen 我正试图利用我的倡议,以及其他类似问题的答案,即如何使用 subprocess.Popen subprocess.Popen 执行下面的脚本,使webscrape数据进入我的插入字段,大约每30秒更新一次。但它不起作用。请你给我指一下正确的方向好吗 import xlrd import subprocess from Tkinter import *

我有下面的代码从webscrape获取数据。 我刚刚学会了如何使用电脑

subprocess.Popen
subprocess.Popen
我正试图利用我的倡议,以及其他类似问题的答案,即如何使用

subprocess.Popen
subprocess.Popen
执行下面的脚本,使webscrape数据进入我的插入字段,大约每30秒更新一次。但它不起作用。请你给我指一下正确的方向好吗

import xlrd
import subprocess
from Tkinter import *
import urllib2
from ttk import *
import Tkinter as tk

class Application(Frame):
    """GUI to display results of 'equity get'"""
    
    def __init__(self, master):
        """initialise the Frame"""
        Frame.__init__(self,master)
        self.grid()
        self.create_widgets()
 
    def create_widgets(self):
        """Create button, text and entry Widget"""
        """what it is i.e. label"""
        
        url = "https://......."
        request= urllib2.Request(url)
        handle = urllib2.urlopen(request)
        content = handle.read()
        splitted_page = content.split("<.......">", 1);
        splitted_page = splitted_page24[1].split("</.......>", 1)

        self.data = Label(self, text ="Data")
        self.data1 = Entry(self, width = 10)
        self.data1.insert(0,splitted_page[0])

        self.data.grid(column = 1, row = 1)
        self.data1.grid(column = 2, row = 1)
        self.data1.grid(column = 3, row = 1)            

        a = 0
        while a < 10:
            a += 1
            time.sleep(15)
        while True:
            out =   subprocess.Popen(["C:\Users\.....\Desktop\Py\python.exe","C:\Users\.....\Desktop\..\Python27\.....\tester.py"])

app = Application(root)
root.title("reload test")
root.geometry("700x300")
root.mainloop()
然后多个命令行窗口打开,显示相同的错误,我必须关闭计算机才能停止

我用“r”前缀修改了对我的文件的引用,如下所示:

([r"C:\Users\.....\Desktop\..\Python27\.....\tester.py"])
但是删除了python.exe调用,因为它只是调用命令行窗口。现在,我收到以下错误消息:

Traceback (most recent call last):
File "C:\Users\....\Desktop\Py\Python27\.....\tester.py", line 46, in <module>
app = Application(root)
File "C:\Users\......\Desktop\Py\Python27\.....\tester.py", line 18, in __init__
self.create_widgets()
File "C:\Users\.....\Desktop\Py\Python27\......\tester.py", line 44, in create_widgets
out = subprocess.Popen([r"C:\Users\Isaac\Desktop\Py\Python27\.....\tester.py"])
File "C:\Users\.....\Desktop\Py\lib\subprocess.py", line 672, in __init__
errread, errwrite)
File "C:\Users\.....\Desktop\Py\lib\subprocess.py", line 882, in _execute_child
startupinfo)
WindowsError: [Error 193] %1 is not a valid Win32 application
回溯(最近一次呼叫最后一次):
文件“C:\Users\..\Desktop\Py\Python27\..\tester.Py”,第46行,在
app=应用程序(根)
文件“C:\Users\..\Desktop\Py\Python27\..\tester.Py”,第18行,在__
self.create_widgets()
文件“C:\Users\..\Desktop\Py\Python27\..\tester.Py”,第44行,在create\u小部件中
out=subprocess.Popen([r“C:\Users\Isaac\Desktop\Py\Python27\..…\tester.Py”]))
文件“C:\Users\…\Desktop\Py\lib\subprocess.Py”,第672行,在uu init中__
错误读取,错误写入)
文件“C:\Users\…\Desktop\Py\lib\subprocess.Py”,第882行,在执行子进程中
startupinfo)
WindowsError:[错误193]%1不是有效的Win32应用程序

Python使用反斜杠引用字符,如
\n
=换行符和
\t
=制表符

使用
r
前缀生成原始字符串文字,如Windows文件路径:

out =  subprocess.Popen([r"C:\Users\.....\Desktop\Py\python.exe", r"C:\Users\.....\Desktop\..\Python27\.....\tester.py"])

它到底是怎么不起作用的?你有错误吗?如果是,请告诉我们它是什么。尝试将每个问题限制为一个固定错误,即,将帖子“%1”作为另一个问题显示为无效的Win32应用程序。您可以使用
sys.executable
而不是指定
r'.\pythonw.exe'
(假设您使用
pythonw.exe
(GUI,而不是控制台应用程序)运行父脚本)。但不幸的是,这不会每秒重复或刷新我的脚本@isaac1290请作为另一个问题重新发布,以便人们能够回答。(提示:考虑<代码>子进程.CHECKOLL输出 VS <代码> Popen < /代码>)