captcha çözücülerin mantığı şudur siz talep edilen sitekey vs bilgileri verirsiniz captcha çözdükten sonra sana bir sonuç key verir bu keyi alıp üye olurken kullanırsın.
gelelim sizin kodun hatasına
captcha_result = captcha_response.json()
buradan sonucu alıyorsunuz ve sadece çözülüp çözülmediğini kontrol ediyorsunuz captcha_result içinde sizin üye olurken kullanmanız gereken key mevcuttur
data = {
'username': username,
'email': mail,
'email2': mail,
'password': pasword,
'password2': pasword,
'accept_terms': '1',
'regsubmit': 'Submit Registration'
}
muhtemelen bu datanın içine girmeniz gerekir. sallıyorum tamamen. 'captha_key': captcha_result , tarzında post işlemine eklemeniz gerek. Şuan sizin kod captcha çözüyor ama onu kullanmıyor. hata burada.
hocam merhaba bu sorunu hallettim şimdi giriş yapıyorum siteye giriş yapmakta sorun yok yeni konu açmak istiyorum onu beceremedim kodşu şekil :
import requests
import time
# 2Captcha API anahtarınız
api_key = 'Api_KEY'
# 2Captcha kullanarak CAPTCHA çözme işlemini tanımlayın
def captcha_coz(api_key, site_key, url):
captcha_veri = {
'key': api_key,
'method': 'userrecaptcha',
'googlekey': site_key,
'pageurl': url,
'json': 1,
}
yanit = requests.post('http://2captcha.com/in.php', data=captcha_veri)
talep_sonuc = yanit.json()
if talep_sonuc['status'] == 1:
# CAPTCHA başarıyla gönderildi, şimdi yanıtı alın
captcha_id = talep_sonuc['request']
for _ in range(30): # İhtiyaca göre yeniden deneme sayısını ayarlayın
yanit = requests.get(f'http://2captcha.com/res.php?key={api_key}&action=get&id={captcha_id}&json=1')
sonuc = yanit.json()
if sonuc['status'] == 1:
return sonuc['request']
elif sonuc['request'] == 'CAPCHA_NOT_READY':
# CAPTCHA hala çözülüyor, bir an bekleyin ve tekrar deneyin
time.sleep(5)
else:
# CAPTCHA çözme başarısız oldu
return None
# Headers ve verilerinizi tanımlayın
headers = {
'authority': 'cracked.io',
'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-language': 'tr-TR,tr;q=0.9',
'cache-control': 'max-age=0',
'content-type': 'application/x-www-form-urlencoded',
'origin': 'https://cracked.io',
'referer': 'https://cracked.io/member.php?action=login',
'sec-ch-ua': '"Chromium";v="116", "Not)A;Brand";v="24", "Google Chrome";v="116"',
'sec-ch-ua-mobile': '?0',
'sec-ch-ua-platform': '"Windows"',
'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/116.0.0.0 Safari/537.36',
}
# CAPTCHA site anahtarınız ve giriş URL'sini tanımlayın
site_key = '6LfICGwdAAAAADhOg-AjpwXaOmwD7G9j-TiiT04p'
login_url = 'https://cracked.io/member.php'
# CAPTCHA'yı çözün
captcha_cevap = captcha_coz(api_key, site_key, login_url)
if captcha_cevap is not None:
# CAPTCHA çözme başarılı oldu, giriş yapın
print("CAPTCHA çözme Başarılı.")
data = {
'username': 'Sunshine76',
'password': 'Ea8yrRwG',
'remember': 'yes',
'action': 'do_login',
'url': 'https://cracked.io/member.php?action=register',
'g-recaptcha-response': captcha_cevap,
}
yanit = requests.post(login_url, headers=headers, data=data)
# Giriş başarılıysa, foruma yeni bir konu gönderin
if yanit.status_code == 200:
print("Giriş başarılı.")
# Headers ve verilerinizi tanımlayın
headers = {
'authority': 'cracked.io',
'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-language': 'tr-TR,tr;q=0.9,en-US;q=0.8,en;q=0.7',
'cache-control': 'max-age=0',
'content-type': 'multipart/form-data; boundary=----WebKitFormBoundary8foz2qepwozPcPNz',
'origin': 'https://cracked.io',
'referer': 'https://cracked.io/newthread.php?fid=34',
'sec-ch-ua': '"Chromium";v="116", "Not)A;Brand";v="24", "Google Chrome";v="116"',
'sec-ch-ua-mobile': '?0',
'sec-ch-ua-platform': '"Windows"',
'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/116.0.0.0 Safari/537.36',
}
params = {
'fid': '34',
'processed': '1',
}
data = '------WebKitFormBoundaryxkZY4nJosxMX1G2h\r\nContent-Disposition: form-data; name="my_post_key"\r\n\r\n07cfbf0f5cfbc2d468068bb327bb1773\r\n------WebKitFormBoundaryxkZY4nJosxMX1G2h\r\nContent-Disposition: form-data; name="postoptions[subscriptionmethod]"\r\n\r\n\r\n------WebKitFormBoundaryxkZY4nJosxMX1G2h\r\nContent-Disposition: form-data; name="threadprefix"\r\n\r\n39\r\n------WebKitFormBoundaryxkZY4nJosxMX1G2h\r\nContent-Disposition: form-data; name="subject"\r\n\r\nDeneme başlık\r\n------WebKitFormBoundaryxkZY4nJosxMX1G2h\r\nContent-Disposition: form-data; name="message"\r\n\r\n[hide]https://pastecanyon.com/rrxvqfq41m[/hide]\r\n------WebKitFormBoundaryxkZY4nJosxMX1G2h\r\nContent-Disposition: form-data; name="numpolloptions"\r\n\r\n2\r\n------WebKitFormBoundaryxkZY4nJosxMX1G2h\r\nContent-Disposition: form-data; name="submit"\r\n\r\nPost Thread\r\n------WebKitFormBoundaryxkZY4nJosxMX1G2h\r\nContent-Disposition: form-data; name="action"\r\n\r\ndo_newthread\r\n------WebKitFormBoundaryxkZY4nJosxMX1G2h\r\nContent-Disposition: form-data; name="posthash"\r\n\r\n221bc2ac15a22df7f129ee184b559066\r\n------WebKitFormBoundaryxkZY4nJosxMX1G2h\r\nContent-Disposition: form-data; name="quoted_ids"\r\n\r\n\r\n------WebKitFormBoundaryxkZY4nJosxMX1G2h\r\nContent-Disposition: form-data; name="tid"\r\n\r\n0\r\n------WebKitFormBoundaryxkZY4nJosxMX1G2h--\r\n'.encode()
response = requests.post('https://cracked.io/newthread.php', headers=headers, params=params, data=data)
else:
print("Giriş başarısız.")
else:
print("CAPTCHA çözme başarısız oldu.")code bu şekilde ama büyük ihtimal şu post paylaşma yerindeki data kısmı farklı ben bunu bi tane siteden çeviyodum direk hazır kod alıyrodum böyle verdi büyük ihtimal yanlış
bu şekil bura datayı düzenliyerekte yaptım gene yapamadım yardım edebilirmisin