21-01-2019, 18:27
Nu gør det ikke så meget i denne situation, men det er en god lejlighed til at lære lidt :)
Den skriver ikke nødvendigvis til filen, før du lukker den, fordi teksten ligger i memory og venter på, at styresystemet skriver den.
Du kan tvinge den til at gøre det med text_file.flush(), så du ikke behøver at åbne og lukke filen hver gang. Så kan du strukturere det sådan her:
I øvrigt kan du også sagtens have flere variabler når du formaterer en string, der skal bare parenteser omkring variablerne (Se linje 11).
Den skriver ikke nødvendigvis til filen, før du lukker den, fordi teksten ligger i memory og venter på, at styresystemet skriver den.
Du kan tvinge den til at gøre det med text_file.flush(), så du ikke behøver at åbne og lukke filen hver gang. Så kan du strukturere det sådan her:
import requests
number = 20100000
url = "http://reklamation.fk.dk/fk_reklamation/DataServlet?do=tlflookup&firmanr=7&lang=da&telefonnr={}"
with open("info.txt", "a") as text_file:
for x in range(number, 100000000):
try:
website = requests.get(url.format(number), timeout=0.8)
website = website.text
text_file.write("\n%s\n%s" % (number, website))
text_file.flush()
print(number, website)
number = number + 1
except requests.exceptions.Timeout as e:
print("Website timed out - ", number)
number = number + 1
I øvrigt kan du også sagtens have flere variabler når du formaterer en string, der skal bare parenteser omkring variablerne (Se linje 11).