Как моделировать более быстрое, похожее на человека типирование с помощью питона (например, pyautogui), не будучи обнаруJavascript

Форум по Javascript
Ответить
Anonymous
 Как моделировать более быстрое, похожее на человека типирование с помощью питона (например, pyautogui), не будучи обнару

Сообщение Anonymous »

Я работаю над экспериментом, в котором мой профессор создает веб-сайт против Chate, который обнаруживает шаблоны печати. Это запускает скрипт Python, который затем вводит текст в сайт в определенной позиции-в частности, где находится текстовое поле.

Код: Выделить всё

fetch("http://localhost:5000/type", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
message: response, // IA response from Gemini API. But I get the text first: window.getSelection().toString()
cursor: cursor
})
})
.then(res => res.json())
.then(() => {
throwConsole(`Injected!`, 'ok');
})
.catch((e) => {
throwConsole(`Error: ${e}. Check the server from Python.`, 'error');
})

< /code>
Инъекция работает, но сайт по -прежнему обнаруживает в некоторых случаях напечатать как искусственное. Я использую pyautogui для моделирования типирования, с задержкой между символами, но, похоже, обнаружение основано на печати скорости или уровня доверия событий. Информация от JS. < /p>
import random
from flask import Flask, request, jsonify
from flask_cors import CORS
import pyautogui
import keyboard
import time

pyautogui.FAILSAFE = False

app = Flask(__name__)
CORS(app, supports_credentials=True)

screen_width, screen_height = pyautogui.size()

custom_x = int(screen_width / 2 + 100)
custom_y = int(screen_height / 2)

def simulate_typing(text):
for char in text:

# pyautogui.write(char, interval=0.6)
pyautogui.typewrite(char)
time.sleep(random.uniform(0.11, 0.12))

@app.route("/type", methods=["POST"])
def type_message():
if request.method == "OPTIONS":
response = app.make_response("")
response.headers["Access-Control-Allow-Origin"] = "*"
response.headers["Access-Control-Allow-Methods"] = "POST, OPTIONS"
response.headers["Access-Control-Allow-Headers"] = "Content-Type"
return response, 200

try:
data = request.get_json(force=True)
message = data.get("message", "")
cursor = data.get("cursor", {})

x = cursor.get("x", 0)
y = cursor.get("y", 0)

# Set the cursor in the textbox on Seia
x = custom_x if x == 0 else x
y = custom_y if y == 0 else y

pyautogui.click(x=x, y=y)
simulate_typing(message)

return jsonify({"status": "ok", "typed": message})
except Exception as e:
return jsonify({"status": "error", "message": str(e)}), 500

if __name__ == "__main__":
print("============================")
print("    AntiSeia is running!     ")
print("============================")
app.run(host="0.0.0.0", port=5000)
time.sleep(3)

Как я могу настроить код Python для улучшения скорости при сохранении набора типизирования и избегая обнаружения? продвижение.


Подробнее здесь: https://stackoverflow.com/questions/797 ... without-be
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»