-
Notifications
You must be signed in to change notification settings - Fork 49
Open
Labels
bugSomething isn't workingSomething isn't working
Description
Try HikerAPI SaaS with a free trial https://hikerapi.com/p/KhMxYMSn
Describe the bug
ERROR [2024-10-21 05:54:50] instagram_api: Object of type coroutine is not JSON serializable
aiograpi/aiograpi/mixins/media.py
Line 928 in 1c476d3
async def media_seen(self, media_ids: List[str], skipped_media_ids: List[str] = []):
This happens because gen() is not awaited:
aiograpi/aiograpi/mixins/media.py
Lines 956 to 958 in 1c476d3
| "reels": gen(media_ids), | |
| "live_vods": {}, | |
| "reel_media_skipped": gen(skipped_media_ids), |
To Reproduce
await client.media_seen([ "01234", "56789", ])Traceback
Traceback (most recent call last):
File "/mnt/modules/accountman/client.py", line 96, in put_story_seen
await self.cl.story_seen([media_id])
File "/usr/local/lib/python3.12/site-packages/aiograpi/mixins/story.py", line 239, in story_seen
return await self.media_seen(
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/aiograpi/mixins/media.py", line 960, in media_seen
result = await self.private_request(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/aiograpi/mixins/private.py", line 619, in private_request
raise e
File "/usr/local/lib/python3.12/site-packages/aiograpi/mixins/private.py", line 611, in private_request
await self._send_private_request(endpoint, **kwargs)
File "/usr/local/lib/python3.12/site-packages/aiograpi/mixins/private.py", line 336, in _send_private_request
data = generate_signature(dumps(data))
^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/aiograpi/utils.py", line 95, in dumps
return InstagrapiJSONEncoder(separators=(",", ":")).encode(data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/json/encoder.py", line 200, in encode
chunks = self.iterencode(o, _one_shot=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/json/encoder.py", line 258, in iterencode
return _iterencode(o, 0)
^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/aiograpi/utils.py", line 53, in default
return json.JSONEncoder.default(self, obj)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/json/encoder.py", line 180, in default
raise TypeError(f'Object of type {o.__class__.__name__} '
TypeError: Object of type coroutine is not JSON serializable
Expected behavior
The coroutine should be awaited.
Screenshots
Desktop (please complete the following information):
- OS: any
- Python version 3.12-5
- aiograpi version [0.0.3]
Additional context
The fix should be fairly easy to apply
data = {
"container_module": "feed_timeline",
"live_vods_skipped": {},
"nuxes_skipped": {},
"nuxes": {},
- "reels": gen(media_ids),
+ "reels": await gen(media_ids),
"live_vods": {},
- "reel_media_skipped": gen(skipped_media_ids),
+ "reel_media_skipped": await gen(skipped_media_ids),
}
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working