from time import sleep from logg import * import requests import os import json import re #base = os.path.dirname(os.path.abspath(__file__))+'/' base = os.path.join(os.path.dirname(os.path.abspath(__file__)), '') try: # auto login from config.json with open(base + 'config.json') as f: login_conf = json.load(f) mast_id = login_conf['mastodon']['id'] mast_instance = login_conf['mastodon']['instance'] acc = retrieve(mast_id, mast_instance) except: # failed. manual login mast_instance = chk_( input('please input your Mastodon Instance address: ')) mast_id = input('please input your mastodon username: '******'Authorization': 'Bearer ' + acc} try: twitter_id = login_conf['twitter']['id'] twitter_pw = login_conf['twitter']['pw'] except: twitter_id = input('Please input your twitter username: '******'Please input your twitter password: ') # FF profile via https://stackoverflow.com/a/48459249 # String via https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent/Firefox user_agent = "Mozilla/5.0 (iPhone; CPU iPhone OS 12_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) FxiOS/7.0.4 Mobile/16B91 Safari/605.1.15"
from pytz import timezone from credential import retrieve from konlpy.tag import Kkma from bs4 import BeautifulSoup as bs kkma = Kkma() mode = 0 base = os.path.dirname(os.path.abspath(__file__)) + '/' with open(base + 'config.json') as f: conf = json.load(f) username = conf['id'] instance = conf['instance'] acc = retrieve(username, instance) head = {'Authorization': 'Bearer ' + acc} uri_user = instance + '/api/v1/streaming/user' r_user = requests.get(uri_user, headers=head, stream=True) print('connected to stream') def mention_to(content, reply_to_id, *args): mention = dict() mention['status'] = content mention['reply_to_id'] = reply_to_id mention['visibility'] = 'unlisted' if 'image' in args: u = upload_media('/home/canor/scripts/birthday_bot/image/human.jpeg') mention['media_ids[]'] = u requests.post(instance + '/api/v1/statuses', headers=head, data=mention)
import requests import os import json from credential import retrieve base = os.path.dirname(os.path.abspath(__file__)) + '/' instance = 'https://canor.kr' try: # with open(base+'credential.json') as f: # cred = json.load(f) # instance = cred['instance'] # username = cred['credential']['id']['username'] # acc = cred['credential']['id']['acc'] acc = retrieve('menubot', instance) status_h = {'Authorization': 'Bearer ' + acc} except: print('no credential found') raise ValueError def sendtoot(s, cb=None, to=None): da = dict() da['status'] = s da['spoiler_text'] = '오늘 메뉴는' da['visibility'] = 'unlisted' if to: da['in_reply_to_id'] = to if cb: pass r = requests.post(instance + '/api/v1/statuses', headers=status_h, data=da) return r.json()['id']