Как загрузить одно и то же изображение CAPTCHA вместо того, чтобы каждый раз получать новое изображение?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как загрузить одно и то же изображение CAPTCHA вместо того, чтобы каждый раз получать новое изображение?

Сообщение Anonymous »

Я хочу загрузить изображение CAPTCHA и решить его с помощью модели машинного обучения, но каждый раз, когда я извлекаю исходный код изображения, оно возвращает другое изображение каждый раз, когда я нажимаю на один и тот же URL-адрес. Я не могу использовать Selenium, потому что он слишком медленный; Я хочу добиться этого за миллисекунды, поэтому предпочитаю использовать запросы.
Веб-сайт: https://orionstars.vip:8781/
Код:

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

from bs4 import BeautifulSoup
import requests

url = "https://orionstars.vip:8781/default.aspx"
base_url = "https://orionstars.vip:8781/"
headers = {
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7",
"Accept-Encoding": "gzip, deflate, br, zstd",
"Accept-Language": "en-US,en;q=0.9",
"Cache-Control": "no-cache",
"Connection": "keep-alive",
"Cookie": "",  # Replace with the actual session ID if dynamic
"Host": "orionstars.vip:8781",
"Pragma": "no-cache",
"Referer": url,
"Sec-Fetch-Dest": "document",
"Sec-Fetch-Mode": "navigate",
"Sec-Fetch-Site": "same-origin",
"Sec-Fetch-User": "?1",
"Upgrade-Insecure-Requests": "1",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36 Edg/129.0.0.0",
"sec-ch-ua": '"Microsoft Edge";v="129", "Not=A?Brand";v="8", "Chromium";v="129"',
"sec-ch-ua-mobile": "?0",
"sec-ch-ua-platform": '"Windows"'
}

session = requests.Session()
response = session.get(url, headers=headers)
if response.status_code != 200:
print(f"Invalid Status code: {response.status_code}")
exit()

headers["Cookie"] = f'ASP.NET_SessionId={session.cookies["ASP.NET_SessionId"]}'

soup = BeautifulSoup(response.content, features="lxml", parser="html.parser")
captcha_image = base_url + soup.find(name="img", attrs={"id": "ImageCheck"}).get("src")
response = requests.get(captcha_image, headers=headers)
if response.status_code == 200:
with open("captcha_image.png", "wb") as file:
file.write(response.content)
Пакеты Pip:

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

requests==2.30.0, beautifulsoup4==4.12.3, lxml==5.3.0
Как я могу быть уверен, что всегда получаю одно и то же изображение CAPTCHA, а не другое каждый раз, учитывая, что я хочу использовать запросы вместо Selenium?

Подробнее здесь: https://stackoverflow.com/questions/790 ... image-each
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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