Skip to content

Commit 2bbe5af

Browse files
Improve speed of stories parsing
1 parent dcdf65e commit 2bbe5af

4 files changed

Lines changed: 20 additions & 8 deletions

File tree

pyrogram/methods/stories/get_all_stories.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,12 +56,15 @@ async def get_all_stories(
5656
)
5757
)
5858

59+
users = {i.id: i for i in r.users}
60+
chats = {i.id: i for i in r.chats}
61+
5962
for peer_story in r.peer_stories:
6063
for story in peer_story.stories:
6164
yield await types.Story._parse(
6265
self,
6366
story,
64-
{i.id: i for i in r.users},
65-
{i.id: i for i in r.chats},
67+
users,
68+
chats,
6669
peer_story.peer
6770
)

pyrogram/methods/stories/get_peer_stories.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,11 +59,14 @@ async def get_peer_stories(
5959
)
6060
)
6161

62+
users = {i.id: i for i in r.users}
63+
chats = {i.id: i for i in r.chats}
64+
6265
for story in r.stories.stories:
6366
yield await types.Story._parse(
6467
self,
6568
story,
66-
{i.id: i for i in r.users},
67-
{i.id: i for i in r.chats},
69+
users,
70+
chats,
6871
r.stories.peer
6972
)

pyrogram/methods/stories/get_stories.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,13 +69,16 @@ async def get_stories(
6969

7070
stories = []
7171

72+
users = {i.id: i for i in r.users}
73+
chats = {i.id: i for i in r.chats}
74+
7275
for story in r.stories:
7376
stories.append(
7477
await types.Story._parse(
7578
self,
7679
story,
77-
{i.id: i for i in r.users},
78-
{i.id: i for i in r.chats},
80+
users,
81+
chats,
7982
peer
8083
)
8184
)

pyrogram/methods/stories/get_stories_archive.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,12 +77,15 @@ async def get_stories_archive(
7777
last = r.stories[-1]
7878
offset_id = last.id
7979

80+
users = {i.id: i for i in r.users}
81+
chats = {i.id: i for i in r.chats}
82+
8083
for story in r.stories:
8184
yield await types.Story._parse(
8285
self,
8386
story,
84-
{i.id: i for i in r.users},
85-
{i.id: i for i in r.chats},
87+
users,
88+
chats,
8689
peer
8790
)
8891

0 commit comments

Comments
 (0)