Hol találhatnék átfogó leírást ezekről a hibakódokról?
Van egy python3-ban írt programom, ami adatokat tölt le a netről. Viszont a kapcsolat elég gyatra, időnként megszakad, időnként a letöltés kicsúszik a timout-ból, illetve mindig tartogat új meglepetést, sajnos ezzel együtt kell élni, a programot úgy próbálom megírni, hogy együtt tudjon élni ezekkel, adott esetben újracsatlakozzon, újrapróbálkozzon, közben a több szál ne akadjon egymásba, stb... viszont a hálózatkezeléssel nagyon hiányos a tudásom, és ami igazán bosszant, hogy dokumentációt sem találok. Rendre jönnek újabb hibák, amiknek egyrészt érteni kellene az okát, másrészt megtalálni az Exception hierarchiában, meg megírni a programot, hogy megfelelően kezelje. Például Errno 0, -2, 104, 113, 101, hol vannak ezek kimerítően felsorolva?
Elég fárasztó, amikor már tudom, hogy van egy ilyen, de várni kell, míg újra felbukkan, hogy ki tudjak csikarni róla információkat, hogy aztán módosítsak valamit a programon, hogy aztán a következő ilyen hibánál kiderüljön, hogy vagy sikerült, vagy nem. Aztán meg kiderüljön, hogy megint van egy másik, ami eddig még nem volt.
Nekem sem világos, hogy mit keresek.
Amit belinkeltetek, az jó egyébként, de nem fedi le a 0 meg a -2 hibakódot. (Illetve az egyik link szerint a 0 Success, de hát akkor miért hiba?)
Hibakód: 0 Ok: Error Típus: <class 'urllib.error.URLError'> <class 'OSError'>
Ok: [Errno -2] A név vagy a szolgáltatás nem ismert <class 'socket.gaierror'>
Utóbbi érthető, akkor dobja, ha nincs internetkapcsolat. De a -2 kód honnan jön, és hol van dokumentálva?
A nullás kód teljes rejtély.
A 0 tradícionálisan a sikert jelenti, az nem hiba.
Nincs olyanod hogy errstring vagy hasonló? Hogy -2-nél mi a hibaüzenet?
De, -2-nél ez az errstring: "A név vagy a szolgáltatás nem ismert"
0-nál nincs. Csak annyi, hogy "Error". De nem siker, mert hiba...
Nekem annyit sikerült kiderítenem, hogy a -2 számú hibát a getaddrinfo(), a getnameinfo() , a gethostbyaddr(), esetleg a gethostbyname() függvény adja vissza:
"- exception socket.gaierror
A subclass of OSError, this exception is raised for address-related errors by getaddrinfo() and getnameinfo(). The accompanying value is a pair (error, string) representing an error returned by a library call. string represents the description of error, as returned by the gai_strerror() C function. The numeric error value will match one of the EAI_* constants defined in this module.
Changed in version 3.3: This class was made a subclass of OSError."
Mondjuk én nem találtam olyan header fájlt, amiben -2 hibakód lenne. Amit találtam, az a netdb.h, -1 hibakóddal: [link]
A 0 feletti hibákról itt egy összefoglaló: [link]
És itt is van valami hasonló: [link]
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!