Уведомления

Группа в Telegram: @pythonsu

#1 Май 19, 2010 02:09:59

XgreshnikX
От:
Зарегистрирован: 2010-05-19
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема с запуском приложений через скрипт

При написании скриптика возникла такая проблемка:

есть некий скриптик my.py из него подключаю модуль mod.py в модуле есть функция которая получает параметром имя файла который надо завпустить

def run_file(path_file):
Пробовал многое по запуску начиная с
os.startfile(file) 
os.system(file)
os.popen(file)
os.execv(program,args)
process = subprocess.Popen(file, shell=True)
Но он упорно не хочет запускать файл, если подключать модуль просто в интерпретаторе, то без проблем запускается нужное приложение а вот если через скрипт то не хоче. Скрипт вызивается интернет страницей.

Подскажите плиз что я упустил, заранее спосибо



Офлайн

#2 Май 19, 2010 07:06:11

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9852
Репутация: +  853  -
Профиль   Отправить e-mail  

Проблема с запуском приложений через скрипт

mod.py

def run_file(fname):
import os
os.system(fname)
m.py
import sys
import mod

mod.run_file(sys.argv[1])
[guest@station tmp]$ python3 m.py "echo x"
x
[guest@station tmp]$



Офлайн

#3 Май 19, 2010 07:07:50

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9852
Репутация: +  853  -
Профиль   Отправить e-mail  

Проблема с запуском приложений через скрипт

[guest@station tmp]$ python3 m.py "list.html"
sh: list.html: команда не найдена
[guest@station tmp]$ python3 m.py "firefox list.html"



Офлайн

#4 Май 19, 2010 08:27:48

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9852
Репутация: +  853  -
Профиль   Отправить e-mail  

Проблема с запуском приложений через скрипт

XgreshnikX
Скрипт вызивается интернет страницей.
[root@station cgi-bin]# cat t.cgi
#!/usr/bin/env /usr/local/bin/python3

import mod

print("Conent-type: text/html\n")
print("Hello")
[root@station cgi-bin]#
[root@station cgi-bin]# cat mod.py

import os

os.system("echo x > /tmp/xvalue")

[root@station cgi-bin]#
это чтобы проверить всё ли видно
после запуска скрипта напрямую должно отобразиться Hello, а в /tmp появляется файл



Офлайн

#5 Май 19, 2010 13:26:26

XgreshnikX
От:
Зарегистрирован: 2010-05-19
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема с запуском приложений через скрипт

Немного не понял решение)). Скрипты под виндой. на "“ ругается что не правильный синтаксис.
в my.py есть функция parse, на нее передаю параметр fileField (содержащий в себе имя файла)с помощью формы:

<form action=”./my.py/parse“ method=”GET“ enctype=”multipart/form-data“ name=”form1“ id=”form1“>
<input name=”fileField“ type=”file“ id=”fileField“ value=”“ />
<input type=”submit“ name=”button“ id=”button“ value=”Ок“ /></form>
my.py вот такой:

import mod_doc
def parse(fileField):
path = ”h:\\p\\“ + fileField
mod_doc.run_file(path); \\ловит имя и передает путь правильно

mod.py:
def run_file(path_file):
import subprocess,os,time
#os.startfile(”h:\\p\\t8.docx.html")
os.system(path_file) \\вот собствено ета строчка не запускает файл , путь которого ей передан.

В чем ошибка?



Офлайн

#6 Май 20, 2010 01:20:27

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9852
Репутация: +  853  -
Профиль   Отправить e-mail  

Проблема с запуском приложений через скрипт

def run_file(path_file):
import os
cmd = "firefox" + " " + path_file
os.system(cmd)
XgreshnikX
если подключать модуль просто в интерпретаторе, то без проблем запускается нужное приложение
чтобы узнать какое имя есть, а какого нет
>>> import os
>>> 'system' in dir(os)
True
>>> 'startfile' in dir(os)
False
>>>
там имён много, чтобы не читать всё

выполни
import os

os.system("h:\\p\\t8.docx.html")
только в оболочке, говоришь запускается файл ?
(мне надо в винду перезагружаться, чтобы просто проверить это)
там не должно так запускаться, хотя я не исключаю, что там это происходит



Офлайн

#7 Май 20, 2010 09:12:50

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9852
Репутация: +  853  -
Профиль   Отправить e-mail  

Проблема с запуском приложений через скрипт

да, проверил, запускается страница в браузере по умолчанию
приложение можно не указывать



Офлайн

#8 Май 20, 2010 09:14:12

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9852
Репутация: +  853  -
Профиль   Отправить e-mail  

Проблема с запуском приложений через скрипт

<form action=
это пока не проверял



Офлайн

#9 Май 21, 2010 06:59:17

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9852
Репутация: +  853  -
Профиль   Отправить e-mail  

Проблема с запуском приложений через скрипт

у меня в браузере под виндой не запускается, а просто выводит содержимое скрипта
размести скрипт на сервере



Офлайн

#10 Май 24, 2010 14:27:45

XgreshnikX
От:
Зарегистрирован: 2010-05-19
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема с запуском приложений через скрипт

Так дело в том что все работает помимо етого, скрипт на сервере лежит и из него вызиваются функции, я уж с етим работаю а вот дошло дело во визова из функции приложения, так тут все )) Уже перепробовал все методы которые только нашел ,но упорно не хочет(((



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version