mb@mb
6 years ago
commit
ada7623e6c
2 changed files with 85 additions and 0 deletions
@ -0,0 +1,5 @@ |
|||
# Trust ~in~ formation |
|||
|
|||
A small tool for Wikipedia article quality inspection using ORES. |
|||
|
|||
|
@ -0,0 +1,80 @@ |
|||
#!/usr/bin/env python3 |
|||
|
|||
import os, time, json |
|||
import mwclient |
|||
|
|||
from sys import stdin, stderr, stdout |
|||
import select |
|||
from pprint import pprint |
|||
import subprocess |
|||
|
|||
site = mwclient.Site('en.wikipedia.org') |
|||
print(site) |
|||
|
|||
while True: |
|||
|
|||
|
|||
page = site.Pages['User:Trustinformationws/sandbox'] |
|||
# print(page) |
|||
|
|||
revid = list(page.revisions())[0]['revid'] |
|||
|
|||
# model = 'draftquality' |
|||
# model = 'damaging' |
|||
model = 'goodfaith' |
|||
model = 'goodfaith draftquality' |
|||
|
|||
cmd = "echo '{\"rev_id\": "+str(revid)+"}' | ores score_revisions https://ores.wikimedia.org enwiki "+model |
|||
# print(cmd) |
|||
|
|||
sub = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) |
|||
output = sub.communicate()[0] |
|||
# print('>>> this is the current output', output) |
|||
output = str(output) |
|||
output = output.split('\\n')[2] |
|||
result = json.loads(output) |
|||
# pprint(result) |
|||
|
|||
if model == 'damaging': |
|||
true = result['score']['damaging']['score']['probability']['true'] |
|||
false = result['score']['damaging']['score']['probability']['false'] |
|||
x = '''\nLatest revid: {}. This edit is ... |
|||
... {} likely to be goodfaith, |
|||
... {} likely badfaith.'''.format(revid, true, false) |
|||
|
|||
if model == 'draftquality': |
|||
ok = result['score']['draftquality']['score']['probability']['OK'] |
|||
vandalism = result['score']['draftquality']['score']['probability']['vandalism'] |
|||
spam = result['score']['draftquality']['score']['probability']['spam'] |
|||
attack = result['score']['draftquality']['score']['probability']['attack'] |
|||
x = '''\nLatest revid: {}. It is ... |
|||
... {} likely to be OK, |
|||
... {} likely to be vandalism, |
|||
... {} likely to be spam, |
|||
... {} likely to be an attack.'''.format(revid, ok, vandalism, spam, attack) |
|||
|
|||
if model == 'goodfaith': |
|||
true = result['score']['goodfaith']['score']['probability']['true'] |
|||
false = result['score']['goodfaith']['score']['probability']['false'] |
|||
x = '''\nLatest revid: {}. This edit is ... |
|||
... {} likely to be goodfaith, |
|||
... {} likely badfaith.'''.format(revid, true, false) |
|||
|
|||
if model == 'goodfaith draftquality': |
|||
true = result['score']['goodfaith']['score']['probability']['true'] |
|||
false = result['score']['goodfaith']['score']['probability']['false'] |
|||
ok = result['score']['draftquality']['score']['probability']['OK'] |
|||
vandalism = result['score']['draftquality']['score']['probability']['vandalism'] |
|||
spam = result['score']['draftquality']['score']['probability']['spam'] |
|||
attack = result['score']['draftquality']['score']['probability']['attack'] |
|||
x = '''\nLatest revid: {}. It is ... |
|||
... {} likely to be OK, |
|||
... {} likely to be vandalism, |
|||
... {} likely to be spam, |
|||
... {} likely to be an attack.\n |
|||
... {} likely to be goodfaith, |
|||
... {} likely badfaith.'''.format(revid, ok, vandalism, spam, attack, true, false) |
|||
|
|||
print(x) |
|||
|
|||
time.sleep(10) |
Loading…
Reference in new issue