Removes unused reference
This commit is contained in:
parent
289f4a80f9
commit
84cb1ad5c8
1 changed files with 66 additions and 0 deletions
66
scripts/aggregate_comments_by_claim.py
Normal file
66
scripts/aggregate_comments_by_claim.py
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
import asyncio
|
||||||
|
import json
|
||||||
|
|
||||||
|
import aiohttp
|
||||||
|
|
||||||
|
from src.database.queries import obtain_connection
|
||||||
|
|
||||||
|
|
||||||
|
async def main():
|
||||||
|
conn = obtain_connection('your_path_here')
|
||||||
|
with conn:
|
||||||
|
curs = conn.cursor()
|
||||||
|
res = curs.execute("""
|
||||||
|
SELECT DISTINCT LbryClaimId claim_id FROM COMMENT;
|
||||||
|
""").fetchall()
|
||||||
|
rows = [tuple(r)[0] for r in res]
|
||||||
|
claims = {cid: {"comments": []} for cid in rows}
|
||||||
|
|
||||||
|
comments = curs.execute("""
|
||||||
|
SELECT channel_name, comment, comment_id, claim_id, timestamp
|
||||||
|
FROM COMMENTS_ON_CLAIMS
|
||||||
|
""").fetchall()
|
||||||
|
comments = [dict(r) for r in comments]
|
||||||
|
while len(comments) > 0:
|
||||||
|
c = comments.pop()
|
||||||
|
cid = c.pop('claim_id')
|
||||||
|
claims[cid]['comments'].append(c)
|
||||||
|
|
||||||
|
lbrynet = 'http://localhost:5279'
|
||||||
|
|
||||||
|
async with aiohttp.ClientSession() as client:
|
||||||
|
i = 0
|
||||||
|
for cid, data in claims.items():
|
||||||
|
body = {
|
||||||
|
'method': 'claim_search',
|
||||||
|
'params': {
|
||||||
|
'claim_id': cid,
|
||||||
|
'no_totals': True
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
async with client.post(lbrynet, json=body) as resp:
|
||||||
|
res = (await resp.json())
|
||||||
|
|
||||||
|
try:
|
||||||
|
res = res['result']['items']
|
||||||
|
print(f'{i} - ok')
|
||||||
|
if res:
|
||||||
|
data.update({
|
||||||
|
'name': res[0]['name'],
|
||||||
|
'permanent_url': res[0]['permanent_url']
|
||||||
|
})
|
||||||
|
except KeyError:
|
||||||
|
print(f'{i}: broke')
|
||||||
|
# await asyncio.sleep(1)
|
||||||
|
i += 1
|
||||||
|
return claims
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
loop = asyncio.get_event_loop()
|
||||||
|
claims = loop.run_until_complete(main())
|
||||||
|
# print(claims)
|
||||||
|
with open('comments_on_claims.json', 'w') as fp:
|
||||||
|
json.dump(claims, fp, indent=2)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue