Seite 1 von 1
bei einer pyw Datei etwas in eine Textdatei schreiben
Verfasst: Montag 12. Mai 2008, 18:29
von Teabag
Hey, hab noch eine frage
Ich will etwas in eine Textdatei schreiben, dies klappt auch super.
Doch wenn ich die Datei ".pyw" nene, da sie im Hintergrund arbeiten soll
erstellt das Programm die Datei zwar noch, schreibt aber nicht das gewünschte hinein.
Ich hoffe ihr könnt mir helfen..
Danke.
Gruß Teabag
Re: bei einer pyw Datei etwas in eine Textdatei schreiben
Verfasst: Montag 12. Mai 2008, 20:49
von gerold
Teabag hat geschrieben:könnt mir helfen..
Hallo Teabag!
Hast du Quellcode für uns?
mfg
Gerold
Verfasst: Montag 12. Mai 2008, 22:54
von Teabag
Hi,
hier der quelcode, er wimmelt warscheinlich von Schönheitsfehlern^^
Code: Alles auswählen
# -*- coding: cp1252 -*-
import urllib2
import time
import sys
import os
sys.stderr = file("zerrors.log", "w")
class calculator:
def __init__(self):
self.last_lines = []
self.klickzahl = []
self.reloader = file("time.txt", "w")
self.endtime = 0
self.i = 0
self.klickimport()
def klickimport(self):
self.klickimport = open("klick.txt")
for line in self.klickimport:
self.klickzahl.append(line)
self.klickimport.close()
if self.klickzahl:
zahl = self.klickzahl[-1]
klicks = zahl
self.klicks = float(klicks)
self.reklicks = 100 - self.klicks
self.endklicks = 100 - self.klicks
self.importer()
def importer(self):
self.websrc = urllib2.urlopen("http://profitmails.de/home.php")
for line in self.websrc:
self.last_lines.append(line)
self.websrc.close()
if self.last_lines:
zahl = self.last_lines[164]
zahl.split(" ")
user = zahl[198:201]
self.useranzahl = float(user)
print "Verbinde zur Datenbank..."
time.sleep(1)
print "Es sind", self.useranzahl, "User online."
self.last_lines = []
self.timer(self.useranzahl)
def timer(self, user):
basis = 175
durchschnitt = 3.4
klickpromin = 0.019428571428571428571428571428571
if self.i > 0:
self.endklicks = self.reklicks - (user * klickpromin)
self.reklicks = self.endklicks
print "ja"
self.endtime = self.endklicks / (user * klickpromin)
print "Noch", self.endtime, "Minuten bis zum 100. Klick."
self.endtimestring = str(self.endtime)
[b]self.reloader.write(self.endtimestring)[/b]
if self.endtime <1> 0:
os.startfile("popup.py")
self.klicks = 0
self.reklicks = 100 - self.klicks
self.endklicks = 100 - self.klicks
time.sleep(60)
self.i += 1
self.importer()
start = calculator()
Hier:
Schon mal vielen Dank.
mfg
Teabag
Verfasst: Dienstag 13. Mai 2008, 07:57
von Trundle
Teabag hat geschrieben:Hier:
Soweit kommt man gar nicht.
Code: Alles auswählen
if self.i > 0:
self.endklicks = self.reklicks - (user * klickpromin)
`self.endklicks` gibt es nur, wenn `self.i` größer ``0`` ist.
`self.i` wird aber am Anfang auf ``0`` gesetzt und (bis diese Stelle erreicht wird) niemals verändert, also gibt es einen ``AttributeError``.
Verfasst: Dienstag 13. Mai 2008, 09:06
von Teabag
Hallo,
aber
hat doch nichts mit self.endklicks zu tun. Es soll ja nicht self.endklicks in eine Datei geschrieben werden, sonder self.endtimestring...
Verfasst: Dienstag 13. Mai 2008, 09:11
von Trundle
Teabag hat geschrieben:Hallo,
aber
hat doch nichts mit self.endklicks zu tun. Es soll ja nicht self.endklicks in eine Datei geschrieben werden, sonder self.endtimestring...
Code: Alles auswählen
self.endtime = self.endklicks / (user * klickpromin)
print "Noch", self.endtime, "Minuten bis zum 100. Klick."
self.endtimestring = str(self.endtime)
Also.. zumindest für mich hat `self.endklicks` etwas mit `self.endtimestring` zu tun.
Verfasst: Dienstag 13. Mai 2008, 09:15
von Teabag
Okay, da hast du recht, aber diese Stelle wird immer ausgeführt und nicht nur wenn i größer 0 ist....
Verfasst: Dienstag 13. Mai 2008, 09:22
von Trundle
Führe den Code mal mit einer leeren ``klicks.txt`` aus.