Ejemplo n.º 1
0
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)
Ejemplo n.º 2
0
    '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)',
Ejemplo n.º 3
0
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
Ejemplo n.º 4
0
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
Ejemplo n.º 5
0
 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)
Ejemplo n.º 6
0
 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)