Minulla on muutaman rivin python scripti, joka hakee tv-ohjelmat sivulta tv-opas.com. Suoritan tuon scriptin sivuillani php exec:lla, mutta sivulla ei näy, kun muutama rivi scriptin outputista. Jos suoritan tuon scriptin päätteessä niin se näyttää kaikki ohjelmat niinkun pitääkin.
Php
<?php exec('python /opt/lampp/cgi-bin/ohjelmat.py', $output); foreach ($output as $program) echo "$program \n"; ?>
Python
# -*- coding: utf-8 -*-
import urllib2
from BeautifulSoup import BeautifulSoup
url = "http://www.tv-opas.com/"
opener = urllib2.build_opener()
opener.addheaders = [('User-agent', 'Mozilla/5.0')]
html = opener.open(url).read()
soup = BeautifulSoup(html)
cells = soup.findAll(attrs={'class' : 'cell linecolor'}, limit=5)
print "-----"
for cell in cells:
times = cell.findAll(attrs={'class' : 'textsmall'})
programs = cell.findAll(attrs={'class' : 'linksmall'})
x = len(times)
for y in range(0, x):
print times[y].string + " " + programs[y].string
print "-----"echo `python /opt/lampp/cgi-bin/ohjelmat.py`;
Tuohan tulostaa vain python /opt/lampp/cgi-bin/ohjelmat.py ?
Edit. Olis voinu kattoo vähän tarkemmin. Tämä siis tulostaa vain sen saman muutaman rivin, mitä tuo ekan postauksen phpkin.
Aihe on jo aika vanha, joten et voi enää vastata siihen.