Software  SadCat | Валидатор ссылок TG

DevCore is the best
Что это такое?
Скрипт проверяет телеграм-ссылки пользователей, групп, каналов, приглашений на существование

Зачем он вам?
Вам он может и не нужен, но лично я из сотен тысяч случайных комбинаций символов достал: несколько тысяч закрытых чатов, пару приватных каналов с софтом, и просто кучу валидных чатов под мои личные задачи

Python:
import re

import requests
from bs4 import BeautifulSoup


def parse(start_url):
    start_url = start_url.replace('\n', '').replace('https://', '').replace('http://', '')
    url = re.search('[a-zA-Z0-9\_]*.t.me', start_url)

    if not url:
        url = re.search('t.me.[a-zA-Z0-9\_]*', start_url)

    if url:
        url = url.group(0).strip()
        url = 'https://' + url
        response = requests.get(url)
        soup = BeautifulSoup(response.content, 'html.parser')

        title = soup.find(
            'div',
            class_='tgme_page_title')
        if title:
            return url
    return None


def main():
    with open(f'links.txt', 'r', encoding="utf8") as file:
        links = file.readlines()
    counter, valid = 0, 0
    for link in links:
        counter += 1
        res = parse(link)
        if res:
            with open(f'result.txt', 'a') as result:
                valid += 1
                result.write(f'{res}\n')
                print(f'{valid}/{counter}/{len(links)} | {res}')


if __name__ == '__main__':
    main()

Python:
pip install beautifulsoup4
pip install regex
pip install requests
  1. Напишите все свои ссылки в файл links.txt, каждая ссылка с новой строки
  2. Запустите
  3. В появившемся файле result.txt будут записаны все существующие ссылки

  1. Проверка ссылок производится посредством парсинга браузерной страницы
  2. Для проверки ссылок аккаунты TG не нужны
  3. Работает в 1 поток, кому надо - можете сами увеличить
  4. Принимает ссылки вида , , ,

Генератор ссылок
Python:
import random
import string

count = int(input("Сколько ссылок сгенерировать: "))


def main():
    for i in range(1, count + 1):
        link = 'https://t.me/+' + ''.join(
            random.sample(string.ascii_letters + string.digits, 16))
        print(f'{i} - {link}')
        with open(f'links.txt', 'a') as result:
            result.write(f'{link}\n')


if __name__ == '__main__':
    main()
 
Активный
Попытка 1:
Нагенерено ~100к ссылок
Валида: 0
Понял, что проблема в коде, ибо функция parse всегда парсит пустую ссылку t.me
Пофиксил банально заменив 16 строку с url = 'https://' + url на url = 'https://' + start_url, помогло. Теперь заранее заготовленные валидные ссылки записываются в файл.

Попытка 2:
Нагенерено ~50к ссылок
Валида: 0
В этот раз вылезла проблема с айпи. По всей видимости, тг видит, когда с одного айпи идет много таких запросов, но что самое интересное: он не блочит доступ, а скрывает валидные чаты под видом невалидных. То есть, не появляется название канала/чата. Решается банальным впном, но по всей видимости придется подключать поддержку прокси.

Идея генерить ссылки и проверять их на валид (по крайней мере для меня) гениальна. Если достопочтимый ToSa ответит, каким боком он нафармил несколько тысяч валидных ссылок, буду крайне благодарен.

Ну, и котика в конце:
You must be registered for see images
 
DevCore is the best
Thread starter
Попытка 1:
Нагенерено ~100к ссылок
Валида: 0
Понял, что проблема в коде, ибо функция parse всегда парсит пустую ссылку t.me
Пофиксил банально заменив 16 строку с url = 'https://' + url на url = 'https://' + start_url, помогло. Теперь заранее заготовленные валидные ссылки записываются в файл.

Попытка 2:
Нагенерено ~50к ссылок
Валида: 0
В этот раз вылезла проблема с айпи. По всей видимости, тг видит, когда с одного айпи идет много таких запросов, но что самое интересное: он не блочит доступ, а скрывает валидные чаты под видом невалидных. То есть, не появляется название канала/чата. Решается банальным впном, но по всей видимости придется подключать поддержку прокси.

Идея генерить ссылки и проверять их на валид (по крайней мере для меня) гениальна. Если достопочтимый ToSa ответит, каким боком он нафармил несколько тысяч валидных ссылок, буду крайне благодарен.

Ну, и котика в конце:
You must be registered for see images

Скрипт не мой
 
Top