2009-07-09 31 views
5

Uzak bir sunucuda python (yerel) çalıştırmak php komut dosyasını nasıl yapabilirim?(local) python komut dosyasından çalıştır (uzak) php komut dosyası

Çıktısını python komut dosyasıyla veya herhangi bir şeyle işlemek istemiyorum, sadece onu çalıştırın ve bu arada python'dan çıkın (php betiği zaten çalışıyor ve işini yapıyor olacak).

düzenleme: elde etmek çalışıyorum Ne:

  • python komut dosyası sunucu ve yüklemeler php script ftp bağlanır
  • o php script çalıştırır (Zaten bu kod parçasını var) (bu parçası kod hakkında)
  • python script başka bir şey yapmaya devam ediyor
  • python betiği sonlandırılıyor (ama muhtemelen php betiği hala çalışmayı tamamlamamıştı, böylece çıktığında bitmesini istemiyorum python)
  • piton komut php komut hala görevini sürdürmektedir, çıkın

-

(Python php çıkışı ile bir şey yapmak değil planını yapmak piton sadece php script yükleyin ve çalışmaya başlamak yapmak zorundadır)

Umarım şimdi daha açıkım. Üzgünüm, sorum yeterli değildi.

Başka bir düzenleme: Ayrıca, uzak sunucuda kabuk erişimine sahip olmadığımı lütfen unutmayın. Ben sadece ftp ve kontrol paneli (cpanel) var; Bunun için ftp kullanmaya çalışıyorum.

+0

i bilmediğimiz url çağırmak için urllib2 kullanmayı tercih ediyorum onu eklemek ve çıktıyı kullanmak istiyorum, kullanıcı tarayıcıda – Phil

+0

@Phil'de php komut dosyasının adresini girdiğinde ne olacağını eşdeğer yapmak istiyorum, lütfen bunu daha ayrıntılı bir şekilde açıklamak için lütfen sorunuzu güncelleyin. Yorum neredeyse hiç mantıklı değil. Python bir tarayıcı değildir ve HTML'yi bir tarayıcının yapacağı şekilde oluşturmaz. Lütfen ne yapmak istediğinize dair biraz daha ayrıntılı açıklama verin. –

+0

tamam, ben düzenledim. Ben bir şey yapmak istemiyorum. Doğru bir şekilde yaklaşıyor muyum, emin değilim, ama ne olmasını istediğimin listesini yazdım - eğer bunu farklı şekilde yorumlamaktan çekinebilirsem. – Phil

cevap

4

, PHP komut dosyası web'de erişilebilir olduğundan emin olun ve

import urllib2 

urllib2.urlopen("http://remotehost.com/myscript.php") 
+0

Sonunda yararlı bir şey! İşe yarayıp yaramadığını kontrol etmek zorunda kalacak, ama eğer çalışırsa, tam olarak yapmak istediğim şey. Teşekkür ederim. – Phil

5
os.system("php yourscript.php") 

diğer alternatif olacaktır:

# will return new process' id 
os.spawnl(os.P_NOWAIT, "php yourscript.php") 

Hepiniz os modülü belgelerine here kontrol edebilirsiniz.

+0

tamam, php komut dosyası çalışırken hala python çıkacağım eğer bu benim php betiğini öldürecek mi? – Phil

+0

Doğru cevap "evet" olduğunda neden 15 karakter yazmalıyım? :-) Öyleyse: Evet, olacak. –

+0

tamam ... benim soru düzenle düzenleme - python zaten – Phil

0

Cevabı How do I include a PHP script in Python? olarak değiştireceğim. piton PHP komut daha farklı bir fiziksel makine üzerinde ise

import subprocess 

def php(script_path): 
    p = subprocess.Popen(['php', script_path]) 
+0

Teşekkürler. Noob sorusu için özür dilerim, ancak uzak sunucuda olduğundan yolu nasıl belirleyebilirim? URL olabilir mi? Ayrıca, php script python çıksa bile çalışmaya devam edecek mi? – Phil

İlgili konular