Gå til innhold

[Python]Hjelp til programmering av et gammelt program. Fixe/Redigere.


Anbefalte innlegg

Hei

 

Har funnet et program som gjerne skulle vært fikset litt på, slik at det vil fungere

igjen. Blant annet under Windows 7.

 

Link til program: Offline Creator

 

Dette er et program som lager en mappe med tre filer.

Disse filene utgjør en film, info fil og en til. Dette inni en mappe

med navn på filmen hentet ut av en CSV fil. (CSV fila er noe ala: Filmnavn ; nummer)

Står også forklart inne i forumet linken viser til.

 

Håper det er noen som kan hjelpe meg og få dette til og fungere.

 

Tror jeg har lagt i rett forum. Men er litt usikker da jeg ikke har peiling i det hele tatt

på og kode programmer eller noe den duren.

 

Hvis det er noe mer som jeg i det heletatt kan hjelpe til med. Så si i fra..

Tror jeg har prøvd det meste akkuratt nå. I hvertfall som jeg kan gjøre uten og skjønne stort

av slik.

 

Her tror jeg også det er mulighet for en donasjon, som takk for hjelpen.

 

 

Håper noen kan hjelpe..

Og det vil garantert være til hjelp for andre.

 

Mvh

 

Petter G.

Endret av MB220CDI99
Lenke til kommentar
Videoannonse
Annonse

Har du prøvd linux versjonen? Den skal funke på windows også siden det er skrevet i python.

 

Last ned og installer python fra python.org. Pass på at du installerer versjon 2.x. Versjon 3.x vil ikke funke.

 

Last ned og installer PIL fra http://www.pythonware.com/products/pil/. Bruk den som passer til din versjon av python. (1.1.7 for Python 2.7)

 

Også trenger du memcoder.exe den får du ved å installere Mplayer. Du finner den her: http://oss.netfarm.it/mplayer-win32.php eller du kan prøve den som ligger i Offline-Creator-1.2.zip.

 

Når du skal starte programmet så starter du det ved å åpne cmd og bruke cd kommandoen til å navigere deg til offline-creator mappen. Også skriver du "C:\der\du\installerte\python\python.exe offlinecreator.py"

 

Følg instruksjonene i readme.txt

Lenke til kommentar

Har du prøvd linux versjonen? Den skal funke på windows også siden det er skrevet i python.

 

Last ned og installer python fra python.org. Pass på at du installerer versjon 2.x. Versjon 3.x vil ikke funke.

 

Last ned og installer PIL fra http://www.pythonware.com/products/pil/. Bruk den som passer til din versjon av python. (1.1.7 for Python 2.7)

 

Også trenger du memcoder.exe den får du ved å installere Mplayer. Du finner den her: http://oss.netfarm.it/mplayer-win32.php eller du kan prøve den som ligger i Offline-Creator-1.2.zip.

 

Når du skal starte programmet så starter du det ved å åpne cmd og bruke cd kommandoen til å navigere deg til offline-creator mappen. Også skriver du "C:\der\du\installerte\python\python.exe offlinecreator.py"

 

Følg instruksjonene i readme.txt

 

Dette får jeg da.

 

C:\Offline-Creator>C:\python27\python.exe offlinecreator.py

Traceback (most recent call last):

File "offlinecreator.py", line 18, in <module>

img_maker = ImageMaker(config)

File "C:\Offline-Creator\lib\image_maker.py", line 13, in __init__

self.font = ImageFont.truetype(_get_path(self.config._get('font_file')), sel

f.font_size)

File "C:\python27\lib\site-packages\PIL\ImageFont.py", line 218, in truetype

return FreeTypeFont(filename, size, index, encoding)

File "C:\python27\lib\site-packages\PIL\ImageFont.py", line 134, in __init__

self.font = core.getfont(file, size, index, encoding)

File "C:\python27\lib\site-packages\PIL\ImageFont.py", line 34, in __getattr__

 

raise ImportError("The _imagingft C module is not installed")

ImportError: The _imagingft C module is not installed

 

 

Hmmm

 

Petter

Endret av MB220CDI99
Lenke til kommentar

Det ser ut som at det er noe feil med 1.1.7 versjonen av PIL.

 

Du kan prøve å installere python 2.6.6 istedenfor 2.7.1

 

Jeg teste nå med følgende i virtualbox windows xp og det funket:

 

Python 2.6.6

PIL 1.1.6 for Python 2.6

pywin32-216.win32-py2.6.exe

Mplayer / mencoder (kopier mencoder.exe til offline-creator mappen)

 

 

Du må også gjøre noen små endringer på offline-creator/lib/imdb_fetcher.py

 

Øverst i filen legger du til:

import urllib, urllib2

Litt lenger ned på linje 15 endrer du:

   def _fetch_data(self, url):
       opener = urllib.FancyURLopener({})
       #try
       fn, header = opener.retrieve(url)
       #except
       #print 'Failed to connect to: %s' % url

       try:
           f = open(fn, 'rb')
           data = f.read()
           f.close()
       except:
           print 'Failed to open: %s' % fn
           data = ''

       time.sleep(1)

       return data

til:

   def _fetch_data(self, url):
       try:
           data = urllib2.urlopen(url).read()
       except:
           print 'Failed to open: %s' % url
           data = ''
       return data

Pass på at du får med alle mellomrommene i begynnelsen av linjene når du redigerer filen, det er viktig for at det skal funke.

 

Du kan laste ned den ferdig redigerte filen her: http://pastebin.com/raw.php?i=8rtAPQXT

 

 

Hvis du har flere versjoner av python installert må du passe på at du bruker riktig versjon av python når du skal kjøre offlinecreator.py, med python 2.6.6 blir det: "C:\python26\python.exe

Endret av FraXinuS
Lenke til kommentar

FraXinuS:

 

Ser kanskje ut som om dette fungerer bedre nå. Men alikevel ikke..

 

Dette får jeg nå:

 

C:\Offline-Creator>c:\python26\python.exe offlinecreator.py

# - Creating Image -- 1.png

# - Creating Video -- 1.avi

Traceback (most recent call last):

File "offlinecreator.py", line 62, in <module>

vid_maker._create_vid(i)

File "C:\Offline-Creator\lib\video_maker.py", line 28, in _create_vid

self._run_command(command)

File "C:\Offline-Creator\lib\video_maker.py", line 45, in _run_command

stup, need_shell, command, creationflags = self._build_command(command)

File "C:\Offline-Creator\lib\video_maker.py", line 38, in _build_command

stup.dwFlags = STARTF_USESHOWWINDOW

NameError: global name 'STARTF_USESHOWWINDOW' is not defined

 

C:\Offline-Creator>

 

 

Ut fra hva jeg seg så trenger du/dere kanskej se disse filene:

Offlinecreator.py, video_maker.py.

 

 

library.csv file er slik inni:

The Matrix,1

Pineapple Express,2

Toy Story, 3

 

Ikke lagt til fler ettersom jeg ikke får det til.

 

Håper fortsatt på hjelp. Og takker så mye på forhånd!

Lenke til kommentar

Denne hadde jeg prøvd og lagt inn før. Men prøvde igjen.

 

Fikk en feilmelding på slutten av innstallasjon:

33bnub7.jpg

 

Er dette bare en fil som pakkes ut og legges i lib ett eller annet inne i Pyhon26?

For da er det kanskje mulig og laste ned det man trenger separat?

 

Petter

Lenke til kommentar

Dette ser ut til og fungere helt ypperlig.

 

TAKKER!!

 

Men et spørsmål til.

 

Med tanke på at det virker som om du kan en del om dette.

 

Skal det være slik at jeg egentlig skulle trenge og installere disse programmene og redigere disse filene for og få dette til og fungere?

 

Og, det reagerer ikke om jeg gjør noen instillinger i settings.ini...

Endret av MB220CDI99
Lenke til kommentar

Ja du må intallere python og nødvendige python-moduler for at det skal funke.

Hvis du bruker linux så er vanligvis mye av det installert fra før så man trenger ikke installere så mye.

På windows så er python sjeldent installer og da må python og de nødvendige modulene installeres, men det finnes et program (py2exe) som pakker alle de nødvendige filene og lager en exe av det så man slipper å installere alt. Hvis du ser på windows versjonen av programmet, Offline Creator v1.2(WINDOWS), så ser du at alle de nødvendige filene ligger i lib mappen og lib/library.zip.

 

 

Du må muligens slette det som ligger i cache mappen for at endringene i settings.ini skal ha effekt.

Lenke til kommentar

Jeg tror ikke det går med py2exe, men i teorien burde det gå hvis py2exe-programmet søkte etter moduler installert på systemet.

Men da er litt av vitsen med py2exe borte, hvis man allerede har python installert kan man like godt kjøre python-programmene direkte.

Endret av FraXinuS
Lenke til kommentar

Ok, skjønner at jeg egentlig ikke fatter hvordan dette fungerer. Hehe

 

Så etter jeg installerte det du sa, Python og PIL.

Så hadde jeg egentlig ikke trengt for stort av det som ligger i Offline-Creator mappa?

 

Men trenger egentlig ikke gå så mye dypere nå.. Bare nysgjerrigheten som tar litt overhånd.

 

Har fått dette til og fungere, og har gjort det jeg skal.

 

Sa takker så utrlig mye for det..

 

Selv om jeg ikke fil til og skru av dette med at den sjekker mot IMDB og slikt..

Reagerte ikke på noe i settings fila.. For da kunne jeg fått det enda mer fullkomment..

 

Så hvis du har lyst får du lov til og hjelpe enda mer..

 

Men takker så inderlig!!

 

:) :) :) :)

Lenke til kommentar

Det som utgjør programmet er:

 

offlinecreator.py

settings2.py

lib/image_maker.py

lib/imdb_fetcher.py

lib/misc.py

lib/video_maker.py

 

PIL og andre moduler som programmet bruker kan komme fra hvor som helst bare python finner dem når programmet kjører. Hvor python leter etter moduler kan du lese mer om her: The Module Search Path.

 

 

Jeg vet ikke hvorfor settings-fila ikke funker hos deg, men den funket hos meg når jeg testet.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...