import os import requests import json from urllib.parse import quote headers = {'Connection': 'Keep alive', 'Content-Type': 'application/x-www-form-urlencoded', 'user-agent': 'Flightmare/bot'} # load settings.json settings = json.load(open(os.environ['HOME']+'/.discussions-bot/settings.json', 'r')) wiki = settings['wiki'] username = settings['username'] password = settings['password'] is_mod = settings['isMod'] # Log in to Wikia network session = core.login(wiki, username, password) print(core.is_logged_in(session, username, wiki)) wiki_id = core.get_wiki_id(session, wiki) print(wiki_id) def get_threads(page): payload = {'limit': '25', 'forumId': '2854567542842721975', 'page': str(page)} r = session.get('https://services.wikia.com/discussion/'+wiki_id+'/threads', params=payload, headers={'Accept': 'application/hal+json', 'user-agent': 'Flightmare/bot'}) decoded_json = r.json() for post in decoded_json['_embedded']['threads']: print(post['id']) r = session.put('https://services.wikia.com/discussion/'+wiki_id+'/threads/' + post['id'] + "/lock", headers={'Accept': 'application/hal+json', 'user-agent': 'Flightmare/bot'}) print(r.text)
'Content-Type': 'application/x-www-form-urlencoded', 'User-Agent': 'Flightmare/bot' } # load settings.json print(os.environ['HOME']) settings = json.load( open(os.environ['HOME'] + '/.discussions-bot/settings.json', 'r')) wiki = 'elderscrolls' username = settings['username'] password = settings['password'] is_mod = settings['isMod'] print(username) # Log in to Wikia network session = core.login(wiki, username, password) print(core.is_logged_in(session, username, wiki)) wiki_id = core.get_wiki_id(session, wiki) edit_token = core.get_edit_token(session, wiki) print(edit_token) #embeddedin for templates, backlinks for whatlinkshere, categorymembers for category #TODO: auto detect above switch by detecting Template: and Category: # payload = {'action': 'query', 'list': 'categorymembers', 'cmtitle': 'Category:Documentation Templates', 'cmlimit': '5000', 'format': 'json'} payload = { 'action': 'query', 'list': 'backlinks', 'bltitle': 'NPC Classes (Tribunal)',
headers = { 'Connection': 'Keep alive', 'Content-Type': 'application/x-www-form-urlencoded', 'user-agent': 'Flightmare/bot' } # load settings.json settings = json.load( open(os.environ['HOME'] + '/.discussions-bot/settings.json', 'r')) blacklist = json.load( open(os.environ['HOME'] + '/.discussions-bot/blacklist.json', 'r')) username = settings['username'] password = settings['password'] # Log in to Wikia network session = core.login('community', username, password) def test_content(wiki_name, wiki_id, post, triggers): for trigger in triggers: if trigger in post['rawContent']: session.put('https://services.wikia.com/discussion/' + str(wiki_id) + '/posts/' + post['id'] + '/delete', headers={ 'Accept': 'application/hal+json', 'user-agent': 'Flightmare/bot' }) print('Deleted: https://' + wiki_name + '.wikia.com/d/p/' + post['threadId'] + '/r/' + post['id']) # post is already deleted, no reason to check for further validations return
import json import time ts = time.time() update_interval = 120 #in seconds headers = {'Connection': 'Keep alive', 'Content-Type': 'application/x-www-form-urlencoded', 'user-agent': 'Flightmare/bot'} # load settings.json settings = json.load(open(os.environ['HOME']+'/.discussions-bot/settings.json', 'r')) blacklist = json.load(open(os.environ['HOME']+'/.discussions-bot/blacklist.json', 'r')) username = settings['username'] password = settings['password'] # Log in to Wikia network session = core.login('community', username, password) def test_content(wiki_name, wiki_id, post, triggers): for trigger in triggers: if trigger in post['rawContent']: session.put('https://services.wikia.com/discussion/'+str(wiki_id)+'/posts/'+post['id']+'/delete', headers={'Accept': 'application/hal+json', 'user-agent': 'Flightmare/bot'}) print('Deleted: https://'+wiki_name+'.wikia.com/d/p/'+post['threadId']+'/r/'+post['id']) # post is already deleted, no reason to check for further validations return for wiki in blacklist['wikis']: #TODO: store last post epoch timer, don't depend on system timer. payload = {'limit': '25', 'page': '0', 'responseGroup': 'small', 'reported': 'false', 'viewableOnly': 'true'} r = session.get('https://services.wikia.com/discussion/'+str(wiki['cityid'])+'/posts', params=payload, headers={'Accept': 'application/hal+json', 'user-agent': 'Flightmare/bot'}) # Error logging
def __init__(self): udict = core.login() super(User, self).__init__(udict) self.id = udict['id'] self.designer_id = user_designers(self.id)[0]['id'] self.games = user_games(self.id)
def __init__(self): udict = core.login() super(User, self).__init__(udict) self.id = udict['id'] self.designer_id = user_designers(self.id)[0]['id'] self.games = user_games(self.id)