أحتاج إلى مساعدة بشأن كميات هائلة من البريد العشوائي

أقدر الردود حتى الآن.

مع تعطيل التسجيلات ليوم واحد، تمكنا من استعادة أنفاسنا.

@RGJ تعجبني فكرتك حول وضع عقبات يجب تجاوزها للحصول على صلاحيات النشر في مجموعة، وهذا شيء سنستكشفه.

باستخدام مستكشف البيانات، تمكنت من تحديد حوالي 5000 حساب روبوت إضافي كانت تتسلل تحت الرادار حتى الآن.

@MikeNolan لست متأكدًا مما إذا كان لدي وصول إلى وحدة تحكم rails بعد. نحن نستضيف مباشرة مع discourse ولم أكن جزءًا من عملية الشراء / الإعداد، لذا أقوم بتصعيد هذا السؤال لمحاولة تحديد ما هو الوصول المتاح لدينا.

أتخيل أنه يمكنني إجراء عمليات حذف عبر واجهة برمجة التطبيقات (API) أيضًا؟ أرى أنه يمكنني بسهولة إنشاء بيانات اعتماد API لنفسي.

شيء على غرار:

import csv
import requests
import time

api_key = 'api_key'
api_username = 'api_username'
base_url = 'https://mydomain.com'
headers = {
    'Api-Key': api_key,
    'Api-Username': api_username
}

def delete_user(user_id):
    delete_url = f'{base_url}/admin/users/{user_id}.json'
    response = requests.delete(delete_url, headers=headers)
    
    if response.status_code == 200:
        print(f'Successfully deleted user {user_id}')
    else:
        print(f'Failed to delete user {user_id}. Status code: {response.status_code}, Response: {response.text}')

with open('user_ids_to_delete.csv', 'r') as csvfile:
    reader = csv.reader(csvfile)
    for row in reader:
        user_id = row[0]
        try:
            delete_user(user_id)
        except Exception as e:
            print(f'Error occurred while deleting user {user_id}: {e}')
        
        time.sleep(1)  # Add a delay to avoid overwhelming the server with requests
إعجاب واحد (1)