inspected
This commit is contained in:
@@ -1,43 +1,38 @@
|
||||
import json
|
||||
|
||||
from httpx import AsyncClient
|
||||
|
||||
from settings import API_BASE
|
||||
from validators.member import ChatMember
|
||||
|
||||
headers = {"Content-Type": "application/json"}
|
||||
|
||||
|
||||
async def get_author(author_id):
|
||||
gql = {
|
||||
"query": '''query GetAuthorById($author_id: Int!) {
|
||||
getAuthorById(author_id: $author_id) { id slug userpic name lastSeen }
|
||||
}''',
|
||||
"query": """query GetAuthorById($author_id: Int!) {
|
||||
getAuthorById(author_id: $author_id) {
|
||||
id slug userpic name lastSeen
|
||||
}
|
||||
}""",
|
||||
"operation": "GetAuthorById",
|
||||
"variables": {"author_id": author_id},
|
||||
}
|
||||
async with AsyncClient() as client:
|
||||
try:
|
||||
response = await client.post(
|
||||
API_BASE, headers=headers, data=json.dumps(gql)
|
||||
)
|
||||
print(f"[services.core] get_author: {response.status_code} {response.text}")
|
||||
if response.status_code != 200:
|
||||
return None
|
||||
r = response.json()
|
||||
author = r.get("data", {}).get("getAuthorById")
|
||||
return author
|
||||
|
||||
except Exception:
|
||||
response = await client.post(API_BASE, headers=headers, json=gql)
|
||||
print(f"[services.core] get_author: {response.status_code} {response.text}")
|
||||
if response.status_code != 200:
|
||||
return None
|
||||
r = response.json()
|
||||
author: ChatMember | None = r.get("data", {}).get("getAuthorById")
|
||||
return author
|
||||
|
||||
|
||||
async def get_network(author_id: int, limit: int = 50, offset: int = 0) -> list:
|
||||
gql = {
|
||||
"query": '''query LoadAuthors($author_id: Int!, $limit: Int, $offset: Int) {
|
||||
authorFollowings(author_id: $author_id, limit: $limit, offset: $offset) {
|
||||
id slug userpic name
|
||||
"query": """query LoadAuthors($author_id: Int!, $limit: Int, $offset: Int) {
|
||||
authorFollowings(author_id: $author_id, limit: $limit, offset: $offset) {
|
||||
id slug userpic name
|
||||
}
|
||||
}''',
|
||||
}""",
|
||||
"operation": "LoadAuthors",
|
||||
"variables": {"author_id": author_id, "limit": limit, "offset": offset},
|
||||
}
|
||||
@@ -45,9 +40,7 @@ async def get_network(author_id: int, limit: int = 50, offset: int = 0) -> list:
|
||||
followings = []
|
||||
try:
|
||||
async with AsyncClient() as client:
|
||||
response = await client.post(
|
||||
API_BASE, headers=headers, data=json.dumps(gql)
|
||||
)
|
||||
response = await client.post(API_BASE, headers=headers, json=gql)
|
||||
if response.status_code != 200:
|
||||
return []
|
||||
r = response.json()
|
||||
@@ -64,25 +57,21 @@ async def get_network(author_id: int, limit: int = 50, offset: int = 0) -> list:
|
||||
|
||||
async def get_followers(author_id, amount):
|
||||
gql = {
|
||||
"query": '''query LoadAuthors($author_id: Int!, $limit: Int, $offset: Int) {
|
||||
"query": """query LoadAuthors($author_id: Int!, $limit: Int, $offset: Int) {
|
||||
authorFollowers(author_id: $author_id, limit: $limit) {
|
||||
id slug userpic name
|
||||
}
|
||||
}''',
|
||||
}""",
|
||||
"operation": "LoadAuthors",
|
||||
"variables": {"author_id": author_id, "limit": amount},
|
||||
}
|
||||
followers = []
|
||||
try:
|
||||
async with AsyncClient() as client:
|
||||
response = await client.post(
|
||||
API_BASE, headers=headers, data=json.dumps(gql)
|
||||
)
|
||||
response = await client.post(API_BASE, headers=headers, json=gql)
|
||||
if response.status_code != 200:
|
||||
return []
|
||||
r = response.json()
|
||||
followers = r.get("data", {}).get("authorFollowers", [])
|
||||
return r.get("data", {}).get("authorFollowers", [])
|
||||
except Exception as e:
|
||||
print(e)
|
||||
followers = []
|
||||
return followers
|
||||
return []
|
||||
|
Reference in New Issue
Block a user