Загрузка...

General theme of MeloniuM scripts

Thread in Extentions created by MeloniuM May 17, 2023. (bumped Nov 26, 2024) 8624 views

  1. Растение
    Растение May 31, 2023 27,785 Sep 26, 2021
    В lzt next crack такая функция уже есть, она также показывает код из которого состоит уник и лычка.
     
  2. КинДзаДза
    КинДзаДза Jun 2, 2023 Не еби мне мозг, он уже выебан. 20,105 Jan 26, 2022
    Я из готовых часа 2 выбирал и результатом не очень доволен был т.к. минимум 4 таких же было. Свой уник создать тогда ума не хватило. Я к тому что уникальный значит единственный и неповторимый.
     
  3. MeloniuM
    MeloniuM Topic starter Jun 25, 2023 make testers great again! 2921 Dec 23, 2021
    Расширение частично реализует задуманное из предложения https://zelenka.guru/threads/5372145/
    [IMG]
    - Добавлено скрытие тем на лету во время загрузки темы
    - Добавлена галочка и анимация при скрытии/показе закрепленных тем как в менюшках сайта
    - Исправлен баг, при переключении страниц закрепы не скрывались
    - Теперь разделе розыгрышей закрепы нельзя скрыть (чтобы не пропустить выгодные
     
    1. MeloniuM Topic starter
      MeloniuM, Добавил версию v1.2
      Исправил баг описанный llimonix
  4. Sylvester
    Sylvester Jun 25, 2023 :hi: 16,302 Sep 30, 2022
    Мелочь, а приятно:finger_up:
     
  5. jesse
    jesse Jun 25, 2023 контактов нет. связь - лс. #нищий :life:
    нихуя себе спс а то в торговлю заходишь и первые 10000 тем из закрепа которые уже видел 500 раз
     
    1. MeloniuM Topic starter
      jesse, в жизни форума тоже хватает, особенно с телефона листать не удобно.
  6. MeloniuM
    MeloniuM Topic starter Jun 25, 2023 make testers great again! 2921 Dec 23, 2021
    Нужно ещё придумать, как оформить выбор нужных разделов, где будет скрытие закреплённых тем, а где нет. В розыгрышах думаю не нужно скрывать.
     
  7. OlegBrawler
    Вот это реально удобно, :+rep:
     
  8. свиньюпомыли
    свиньюпомыли Jun 25, 2023 свинью помыли 6102 Feb 29, 2020
    бедняги мамонты покупатели закрепа, норм тема +реп
     
  9. форум
    наконец годно, давно ждал такую хрень, а то пока в некоторых разделах пока закрепы пролистаешь - пальчики устанут:cutedance:
     
  10. a911
    a911 Jun 26, 2023 Продам рекламу в профиле lolz.live/threads/2604681 51,793 May 30, 2018
    вот это уже реально годное предложение
     
    1. View previous comments (1)
    2. Luckyman
      a911, ахахаха, предложение?
    3. a911
      расширение, но уже не исправить :finger_down:
    4. MeloniuM Topic starter
      Luckyman, сперва сделал предложение, потом написал скрипт
  11. Ne0yron
    Ne0yron Jun 26, 2023 大きなお世話 65 Apr 7, 2021
    Прекрасная тема, помогает оставаться нервным клеткам в покое и очень полезно
     
  12. Proxxity
    Proxxity Jun 26, 2023 Что ты думал, в сказку попал? 503 Jan 22, 2021
    А когда раздел с играми добавят?
     
  13. Растение
    Растение Jun 27, 2023 27,785 Sep 26, 2021
    Зачем когда есть галочка " скрыть закрепленные темы "?
     
    1. MeloniuM Topic starter
  14. Шейх
    Приятная мелочушка
     
  15. llimonix
    llimonix Jul 10, 2023 :peace: make testers great again! 23,968 Jan 20, 2020
    Кнопка появляется только после обновления страницы. Когда переходишь по разделам кнопка пропадает
     
    1. View previous comments (4)
    2. llimonix
      MeloniuM, причем он съедает закреп, а кнопку не дает
  16. God_likeGL
    God_likeGL Layer 1 Jul 16, 2023 Сyицид — это не выход, это наш святой обряд. :duck_knife2: 31,078 Oct 30, 2018
    [IMG]
    в лолз нексте уже реализованно
     
    1. MeloniuM Topic starter
      God_likeGL, интересный ты, и предложение не нравится и расширение говоришь что есть уже)
    2. God_likeGL Layer 1
      MeloniuM, ну извини яж не чтоб обидеть пишу
  17. MeloniuM
    MeloniuM Topic starter Aug 6, 2023 make testers great again! 2921 Dec 23, 2021
  18. MeloniuM
    MeloniuM Topic starter Aug 20, 2023 make testers great again! 2921 Dec 23, 2021

    [IMG]
    Увидел похожую тему, решил поделиться своим скриптом.
    Скрипт в цикле проверяет наличие новых уведомлений на форуме и отображает его в уведомлениях windows/android.
    На ПК:
    [IMG]
    [IMG]
    На телефоне:
    [IMG]
    [IMG]
    У каждого типа уведомления своя иконка (не все виды отснифал, можете предлагать ещё)
    [IMG]

    Нажатие на уведомление открывает его в браузере.

    Python

    import requests
    from time import sleep
    import json
    from bs4 import BeautifulSoup
    import sys
    import os

    VERSION = "1.1"

    print("""\u001b[32m
    %((
    (( ((((
    \u001b[0m\u001b[42mZelenify\u001b[0m\u001b[32m ( &(((& #(((((%
    #((& (((((((((((((
    ((% ((((##((((((((((((((&
    (# (((((%((((((((((((((((&
    &(((( (((((((((((((((((#
    ((((((((((((((((((# &((((%
    #(((((((((((((# &(((((((
    ((((((((( &(((((( #((((((((
    ((((( &( %(( &(((((((
    %(((((# ((((((
    (((((((((((((((

    \u001b[45m\u001b[34;1mby MeloniuM\u001b[0m""")
    is_android: bool = hasattr(sys, 'getandroidapilevel')
    PATH = os.path.dirname(os.path.realpath(__file__))
    WIN_ICON = os.path.join(PATH, "favicon.png")

    class LolzApi:
    def __init__(self, token: str, baseUrl="https://api.zelenka.guru/"):
    self.token = token
    self.baseUrl = baseUrl
    self.session = requests.session()
    self.session.headers = {'Authorization': f'Bearer {self.token}'}

    def get(self, url, params={}):
    return self.session.get(self.baseUrl + url, params=params)

    def post(self, url, data={}):
    return self.session.post(self.baseUrl + url, data=data)

    class Zelenify:
    def __init__(self, api, config, is_android):
    self.api = api
    self.config = config
    self.is_android = is_android

    icon=WIN_ICON
    url="https://zelenify.t.me"
    if is_android:
    icon = "notifications"
    url = "termux-open " + url

    self.send_notify(title='Уведомление', content='Скрипт запущен. Контакты: https://zelenify.t.me', url=url, icon=icon)

    def send_notify(self, title: str, content: str, url: str, icon=WIN_ICON):
    if self.is_android:
    termux.Notification.notify(title=("Zelenify " + title), content=content, kwargs={"icon": icon, "action": url})
    #execute(["termux-notification", "-t", title, "-c", content, "-i", "Zelenify", "--action", "termux-open " + url, "--icon", icon])
    else:
    notify(title, content, on_click=url, icon=icon, app_id="Zelenify")

    def run(self):
    #global ****
    """
    todo:
    - добавить конфиг с выбором типа уведомлений которые отслеживать
    """
    last = []
    dots = 1
    connectError = False
    while True:
    response = None;
    try:
    response = api.get("notifications")
    if('error' in response.json()):
    if(response.json()['error'] == 'invalid_token'):
    print('> Неверный токен, измените его в config.json')
    else:
    print('[' + response.json()['error'] +']', response.json()['error_description'])
    break
    notifys = response.json()['notifications']
    except requests.exceptions.ConnectionError as e:
    print('[Error] Пропал интернет, ожидаю подключение' + '.'*dots + ' ', end="\r")
    dots += 1
    if dots >= 3:
    dots = 1
    connectError = True
    sleep(3)
    continue
    except Exception as e:
    if response != None:
    if response.status_code == 429:#флуд
    sleep(5)
    continue
    print('[Error]', e, end="\r")
    continue
    else:
    if connectError:
    print('\n[info] Соединение восстановлено ')
    connectError = False

    if response.status_code != 200:
    print('status', response)
    sleep(5)
    continue

    for notify in notifys:
    soup = BeautifulSoup(notify['notification_html'], 'html.parser')
    if notify['notification_is_unread'] == True and not notify['notification_id'] in last:
    if notify['creator_username'] != 'Реклама' or self.config['hide_ads'] != 'true':
    #log = notify['content_type'] + ":" + notify['content_action']
    #if not log in ****.keys():
    # ****[log] = soup.text.strip()
    url = soup.find("a", {"class": "PopupItemLink"})
    if url:
    url = url.get('href')
    else:
    url = False
    icon=WIN_ICON
    if is_android:
    icon = self.get_termux_icon(notify['content_type'], notify['content_action'])
    #print(icon)
    if url:
    url = "termux-open " + str(url)
    #print(url)
    self.send_notify(title="Уведомление", content=soup.text.strip(), url=url, icon=icon)
    last.append(notify['notification_id'])
    print('\u001b[35;1m>\u001b[32;1m ' + soup.text.strip() + '\u001b[0m')
    mark = True
    if notify['notification_is_unread'] == False and notify['notification_id'] in last:
    last.remove(notify['notification_id'])
    sleep(1)

    def get_termux_icon(self, content_type: str, content_action: str):
    alerts1 = {
    'thread': 'format_list_bulleted', #type: icon
    'profile_post_comment': 'chat'
    }
    if content_type in alerts1.keys():
    return alerts1[content_type]

    alerts2 = {
    'conversation': {#type
    'insert': 'insert_comment', #action: icon
    'join': 'person_add',
    'reply' : 'reply'
    },
    'post': {
    'insert': 'speaker_notes'
    },
    'post_comment': {
    'like': 'favorite'
    },
    'profile_post': {
    'like': 'thumb_up'
    },
    'user': {
    'post_copy': 'content_copy',
    'post_move': 'low_priority',
    'thread_merge': 'merge_type',
    'thread_move': 'wrap_text',
    'from_admin': 'verified_user'
    }
    }
    if content_type in alerts2.keys():
    if content_action in alerts2[content_type].keys():
    return alerts2[content_type][content_action]

    return 'notification'

    if __name__ == '__main__':
    if is_android:
    try:
    import termux
    except:
    print("Установите Termux:API - pip install termux")
    exit(1)
    else:
    try:
    from win11toast import notify
    except:
    print("Установите win11toast - pip install win11toast")
    exit(1)
    """
    1.Заходим на https://zelenka.guru/account/api и создаём приложение
    2.Теперь перехожим на https://api.zelenka.guru/oauth/authorize?response_type=token&client_id=CLIENT_ID&scope=read+post+market заменив CLIENT_ID на айди приложения из пункта [1]
    3.Выдаём приложению права все кроме маркета(они ему не нужны)
    4.Копируем токен из адресной строки со страницы на которую нас перенаправило и вставляем в код
    """
    if not os.path.exists(os.path.join(PATH, "config.json")):
    with open(os.path.join(PATH, 'config.json'), 'w') as configfile:
    data = {
    'token': input('Введите токен lolzapi: '),
    'hide_ads': 'true'
    }
    configfile.write(json.dumps(data))
    configfile.close()
    with open(os.path.join(PATH, 'config.json'), "r") as jsonfile:
    config = json.load(jsonfile)
    api = LolzApi(config['token'])

    if not os.path.exists(WIN_ICON):
    print('\u001b[33;1mНе найден favicon.png, качаю с форума\u001b[0m')
    favicon = open(WIN_ICON, 'wb')
    favicon.write(requests.get("https://zelenka.guru/styles/brand/download/logos/LolzTeam-Logo-Green.png", allow_redirects=True).content)
    favicon.close()
    print('\u001b[33;1mГотово!\u001b[0m')
    print('Жду новые уведомления на форуме')

    try:
    zel = Zelenify(api, config, is_android)
    zel.run()
    except KeyboardInterrupt:
    print(' '*50, end="\r")
    print('До новых встреч <3')

    Для windows:
    pip install bs4 requests win11toast

    Для андроид нужен Termux и Termux:API (советую ставить версии с гитхаба)
    Code
    pip install termux-api
    pkg install bs4 requests termux-api
    Для андроид можно установить Termux:Boot, либо Termux:Widget для быстрого запуска скрипта.
    Первый для запуска при включении телефона, второй для запуска с виджета на рабочем столе.

    Для владельцев браслета Mi Band:
    Можно через приложение Notify сменить иконку у Termux:API на логотип форума.
    [IMG]
    Установить Notify
    Выбираем - Приложения
    [IMG]

    Добавляем в список приложение Termux:API нажав на плюсик и выбрав его в списке приложений.
    [IMG]
    А теперь изменим иконку приложения. Жмём шестерёнку:
    [IMG]
    Настроить значок уведомлений
    [IMG]
    Выбираем в списке то приложение, которым не будем пользоваться.
    Я например не использую Mi чат, его иконку заменю лого форума.
    [IMG]
    Выбрать значок с телефона. Предварительно скачайте логотип форума.
    [IMG]
    Теперь сменим иконку у приложения Termux:API выбрав в настройках изменённую в предыдущем шаге иконку.
    [IMG]

    В комментариях рад видеть предложения по улучшению скрипта.​
     
  19. kipsad
    kipsad Aug 20, 2023 Купить домен анонимно - t.me/FastDomainBot 17,512 Dec 24, 2018
    с андроидом максимально симпатично выглядит, а так +rep за уведы на винде
     
    1. MeloniuM Topic starter
      kipsad, у каждого типа уведомлений своя иконка
    2. kipsad
      MeloniuM, не ну на часах максимально балдежно выглядит, без шуток, лампово прям
  20. vuchaev2015
    vuchaev2015 Aug 20, 2023 все ближе и ближе... 23,529 Feb 15, 2018
    видел данный скрипт от мелониума до создания самой темы. олд получается.
    хорош :cool_bun:
     
    1. View previous comments (2)
    2. vuchaev2015
      MeloniuM, :cat_face: чутка не успел конечно до малваря, но твой скрипт как-то по прикольнее выглядит :orange:
    3. MeloniuM Topic starter
      vuchaev2015, если бы не малварь, я бы забыл о скрипте:peka:
    4. vuchaev2015
      MeloniuM, замотивировал))
Loading...
Top