dunkyl / SlyYTDAPI-Python

No-boilerplate, async YouTube Data API access. 😋
MIT License
3 stars 1 forks source link

Parsing duration fails #16

Closed betterthanever2 closed 2 months ago

betterthanever2 commented 2 months ago

Trace:

Traceback (most recent call last):
  File "D:\up\code\wapatools\bases\wapaganda\media\platforms\youtube.py", line 249, in update_target
    target_updates = await target.fetch_target_updates()
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\up\code\wapatools\bases\wapaganda\media\platforms\youtube.py", line 63, in fetch_target_updates
    raw_videos = await self.ytb_api.videos([u.id for u in uploads], parts=Part.ALL_PUBLIC())
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\up\code\wapatools\.venv\Lib\site-packages\SlyAPI\asyncy.py", line 56, in _items
    return [t async for t in self.gen]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\up\code\wapatools\.venv\Lib\site-packages\SlyAPI\asyncy.py", line 56, in <listcomp>
    return [t async for t in self.gen]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\up\code\wapatools\.venv\Lib\site-packages\SlyYTDAPI\ytdapi.py", line 593, in x
    async for v in self.paginated(
  File "D:\up\code\wapatools\.venv\Lib\site-packages\SlyAPI\asyncy.py", line 64, in <genexpr>
    return AsyncLazy(f(x) async for x in self)
                     ^^^^
  File "D:\up\code\wapatools\.venv\Lib\site-packages\SlyYTDAPI\ytdapi.py", line 595, in <lambda>
    ).map(lambda r: Video(r, self)):
                    ^^^^^^^^^^^^^^
  File "D:\up\code\wapatools\.venv\Lib\site-packages\SlyYTDAPI\ytdapi.py", line 327, in __init__
    m = ISO8601_PERIOD.match(contentDetails.get('duration'))
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: expected string or bytes-like object, got 'NoneType'
dunkyl commented 2 months ago

A new version has been published that hopes to fix this and #15.