mirror of
https://github.com/Garmelon/PFERD.git
synced 2023-12-21 10:23:01 +01:00
Fix crash as soon as first cl or dl token was acquired
This commit is contained in:
parent
8fad8edc1e
commit
662191eca9
@ -117,12 +117,11 @@ def main() -> None:
|
||||
|
||||
try:
|
||||
pferd = Pferd(config)
|
||||
asyncio.run(pferd.run())
|
||||
except ConfigOptionError as e:
|
||||
log.unlock()
|
||||
log.error(str(e))
|
||||
exit(1)
|
||||
|
||||
try:
|
||||
asyncio.run(pferd.run())
|
||||
except KeyboardInterrupt:
|
||||
log.unlock()
|
||||
log.explain_topic("Interrupted, exiting immediately")
|
||||
|
@ -20,9 +20,6 @@ class Pferd:
|
||||
self._authenticators: Dict[str, Authenticator] = {}
|
||||
self._crawlers: Dict[str, Crawler] = {}
|
||||
|
||||
self._load_authenticators()
|
||||
self._load_crawlers()
|
||||
|
||||
def _load_authenticators(self) -> None:
|
||||
for name, section in self._config.authenticator_sections():
|
||||
log.print(f"[bold bright_cyan]Loading[/] {escape(name)}")
|
||||
@ -46,6 +43,12 @@ class Pferd:
|
||||
self._crawlers[name] = crawler
|
||||
|
||||
async def run(self) -> None:
|
||||
# These two functions must run inside the same event loop as the
|
||||
# crawlers, so that any new objects (like Conditions or Futures) can
|
||||
# obtain the correct event loop.
|
||||
self._load_authenticators()
|
||||
self._load_crawlers()
|
||||
|
||||
for name, crawler in self._crawlers.items():
|
||||
log.print("")
|
||||
log.print(f"[bold bright_cyan]Running[/] {escape(name)}")
|
||||
|
Loading…
Reference in New Issue
Block a user