Wiem że jestem świeży i cep ale potrzebuje waszej pomocy do przerobienia kodu z pythona na PHP, zależy mi by skrypt był wykonywalny ze strony przeglądarki.
Czyli wysłać plik(.txt .nc) na serwer i tam przerobiony na kilka mniejszych
Kod
#!/usr/bin/env python
#-*- coding: utf-8 -*-
import sys
import os
import re
import Tkinter as tk
import tkMessageBox
import os.path
import datetime
import tkFileDialog
tk.Tk().withdraw()
backup = tkFileDialog.askopenfilename (filetypes = [('NC files', '.nc'), ('text files', '.txt')], title = '! Wybierz plik do przetworzenia !')
if os.path.isfile( backup ):
# stworzenie katalogu
tk.Tk().withdraw()
HAASCNC = tkFileDialog.askdirectory (initialdir = '/home', title = '! Wybierz folder do zapisu wszystkich programów !')
if os.path.isdir( HAASCNC ):
if not os.path.isdir(HAASCNC):
os.mkdir(HAASCNC)
# otworzenie pliku do zapisu listy stworzonych plikow
file_list = open( HAASCNC + '/listprog.txt', 'w')
file_list.write('%\nO00000(LIST-PROG)\n')
# pliku do zapisu danych. na poczatek None aby pominac linie przed pierwszym O[0-9]{5}
file_out = None
with open(backup, 'r') as file_in:
for line in file_in:
line = line.rstrip('\n')
# sprawdzenie czy linia zawiera nazwe pliku O[0-9]{5}
if re.match('^O[0-9]{5}.*', line):
# zamiana pewnych znakow
line = line.replace('/',' ').replace(' ','')
# zamkniecie poprzednio otwartego pliku (jesli nie jest None)
if file_out:
# dodanie koncowej linii z %
file_out.write('%\n')
file_out.close()
print line
# otwarcie/stworzenie nowego pliku
file_out = open(os.path.join(HAASCNC, line), 'w')
# dodanie poczatkowej linii z %
file_out.write('%\n')
# zapisujemy nazwe do pliku z nazwami plikow !
file_list.write( '/' + line + '\n')
# zapisanie linii jesli zostal juz utworzony plik
if file_out:
if not line:
line = ''
file_out.write(line + '\n')
# zamykniecie ostatniego tworzonego plik
if file_out:
file_out.write('%\n')
file_list.write('%\n')
# zamykniecie pliku z lista stworzonych plikow
file_list.close()
msg = u'Wszystkie pliki zostały wyodrębnione.\nZnajdujš się w katalogu:\n' + HAASCNC + u'\n\nLista programów znajduje się w pliku:\n' + HAASCNC + u'/listprog.txt'
else:
msg = u'Nie wybrano katalogu do zapisu'
else:
msg = u'Nie wybrano pliku *.nc lub *.txt'
tk.Tk().withdraw()
tkMessageBox.showwarning("HAASCNC", msg )
#-*- coding: utf-8 -*-
import sys
import os
import re
import Tkinter as tk
import tkMessageBox
import os.path
import datetime
import tkFileDialog
tk.Tk().withdraw()
backup = tkFileDialog.askopenfilename (filetypes = [('NC files', '.nc'), ('text files', '.txt')], title = '! Wybierz plik do przetworzenia !')
if os.path.isfile( backup ):
# stworzenie katalogu
tk.Tk().withdraw()
HAASCNC = tkFileDialog.askdirectory (initialdir = '/home', title = '! Wybierz folder do zapisu wszystkich programów !')
if os.path.isdir( HAASCNC ):
if not os.path.isdir(HAASCNC):
os.mkdir(HAASCNC)
# otworzenie pliku do zapisu listy stworzonych plikow
file_list = open( HAASCNC + '/listprog.txt', 'w')
file_list.write('%\nO00000(LIST-PROG)\n')
# pliku do zapisu danych. na poczatek None aby pominac linie przed pierwszym O[0-9]{5}
file_out = None
with open(backup, 'r') as file_in:
for line in file_in:
line = line.rstrip('\n')
# sprawdzenie czy linia zawiera nazwe pliku O[0-9]{5}
if re.match('^O[0-9]{5}.*', line):
# zamiana pewnych znakow
line = line.replace('/',' ').replace(' ','')
# zamkniecie poprzednio otwartego pliku (jesli nie jest None)
if file_out:
# dodanie koncowej linii z %
file_out.write('%\n')
file_out.close()
print line
# otwarcie/stworzenie nowego pliku
file_out = open(os.path.join(HAASCNC, line), 'w')
# dodanie poczatkowej linii z %
file_out.write('%\n')
# zapisujemy nazwe do pliku z nazwami plikow !
file_list.write( '/' + line + '\n')
# zapisanie linii jesli zostal juz utworzony plik
if file_out:
if not line:
line = ''
file_out.write(line + '\n')
# zamykniecie ostatniego tworzonego plik
if file_out:
file_out.write('%\n')
file_list.write('%\n')
# zamykniecie pliku z lista stworzonych plikow
file_list.close()
msg = u'Wszystkie pliki zostały wyodrębnione.\nZnajdujš się w katalogu:\n' + HAASCNC + u'\n\nLista programów znajduje się w pliku:\n' + HAASCNC + u'/listprog.txt'
else:
msg = u'Nie wybrano katalogu do zapisu'
else:
msg = u'Nie wybrano pliku *.nc lub *.txt'
tk.Tk().withdraw()
tkMessageBox.showwarning("HAASCNC", msg )
Pozdrawiam i liczę na pomoc