comparison website/issues/extensions/spambayes.py @ 5408:e46ce04d5bbc

Python 3 preparation: update xmlrpclib / SimpleXMLRPCServer imports. New roundup/anypy/xmlrpc_.py added. Manual patch.
author Joseph Myers <jsm@polyomino.org.uk>
date Wed, 25 Jul 2018 00:16:00 +0000
parents 0942fe89e82e
children
comparison
equal deleted inserted replaced
5407:f004824563a3 5408:e46ce04d5bbc
1 import re, math 1 import re, math
2 from roundup.cgi.actions import Action 2 from roundup.cgi.actions import Action
3 from roundup.cgi.exceptions import * 3 from roundup.cgi.exceptions import *
4 from roundup.anypy import xmlrpc_
4 5
5 import xmlrpclib, socket 6 import socket
6 7
7 REVPAT = re.compile(r'(r[0-9]+\b|rev(ision)? [0-9]+\b)') 8 REVPAT = re.compile(r'(r[0-9]+\b|rev(ision)? [0-9]+\b)')
8 9
9 def extract_classinfo(db, classname, nodeid): 10 def extract_classinfo(db, classname, nodeid):
10 node = db.getnode(classname, nodeid) 11 node = db.getnode(classname, nodeid)
24 return (content, tokens) 25 return (content, tokens)
25 26
26 def train_spambayes(db, content, tokens, is_spam): 27 def train_spambayes(db, content, tokens, is_spam):
27 spambayes_uri = db.config.detectors['SPAMBAYES_URI'] 28 spambayes_uri = db.config.detectors['SPAMBAYES_URI']
28 29
29 server = xmlrpclib.ServerProxy(spambayes_uri, verbose=False) 30 server = xmlrpc_.client.ServerProxy(spambayes_uri, verbose=False)
30 try: 31 try:
31 server.train({'content':content}, tokens, {}, is_spam) 32 server.train({'content':content}, tokens, {}, is_spam)
32 return (True, None) 33 return (True, None)
33 except (socket.error, xmlrpclib.Error) as e: 34 except (socket.error, xmlrpc_.client.Error) as e:
34 return (False, str(e)) 35 return (False, str(e))
35 36
36 37
37 class SpambayesClassify(Action): 38 class SpambayesClassify(Action):
38 permissionType = 'SB: May Classify' 39 permissionType = 'SB: May Classify'

Roundup Issue Tracker: http://roundup-tracker.org/