Python ile CAPTCHA Resimlerini Çekme ve Pytesseract ile Çözme
Bu örnekte, Python kullanarak web sitesindeki CAPTCHA resmini çekmeyi, Base64 formatını çözmeyi ve Pytesseract ile metne dönüştürmeyi anlatacağız.
1) Gerekli Kütüphaneler
Python'da gerekli kütüphaneleri projeye dahil ediyoruz.
Python:
import pytesseract
import requests
import base64
from bs4 import BeautifulSoup
from PIL import Image
2) HTTP İsteği Gönderme
Cookie yönetimini kolaylaştırmak için Session kullanıyoruz.
Python:
session = requests.Session()
url = "http://localhost/Ders/index.php"
response = session.get(url)
3) CAPTCHA Resmini Alma ve Çözme
BeautifulSoup ile HTML içerisindeki Base64 kodlu resmi alıyor, çözüyor ve Pytesseract ile metne dönüştürüyoruz.
Python:
soup = BeautifulSoup(response.text, "html.parser")
base64_element = soup.find("img", {"id": "imgKod"})
base64_code = base64_element["src"].split(",")[-1]
image_data = base64.b64decode(base64_code)
with open("decoded_image.png", "wb") as image_file:
image_file.write(image_data)
image = Image.open("decoded_image.png")
captcha_text = pytesseract.image_to_string(image)
captcha_text = captcha_text.replace("\n", "").replace("\x0c", "").strip()
print(captcha_text)
Kodun Tamamı
Python:
import pytesseract
import requests
import base64
from bs4 import BeautifulSoup
from PIL import Image
session = requests.Session()
url = "http://localhost/Ders/index.php"
response = session.get(url)
soup = BeautifulSoup(response.text, "html.parser")
base64_element = soup.find("img", {"id": "imgKod"})
base64_code = base64_element["src"].split(",")[-1]
image_data = base64.b64decode(base64_code)
with open("decoded_image.png", "wb") as image_file:
image_file.write(image_data)
image = Image.open("decoded_image.png")
captcha_text = pytesseract.image_to_string(image)
captcha_text = captcha_text.replace("\n", "").replace("\x0c", "").strip()
print(captcha_text)
[/CODE
[COLOR=#E53935][B]Not:[/B][/COLOR]
Bu örnek yalnızca [B]kendi uygulamalarınız[/B] veya [B]izinli test ortamları[/B] üzerinde OCR kullanımını göstermek amacıyla hazırlanmıştır. Gerçek web sitelerindeki CAPTCHA sistemleri, otomasyonu engellemek için tasarlanmıştır ve bunları izinsiz olarak aşmaya çalışmak hizmet şartlarını ihlal edebilir.
[/CENTER][/HEADING]
[CENTER][/CENTER]
Python ile CAPTCHA Resimlerini Çekme ve Pytesseract ile Çözme
Bu örnekte, Python kullanarak web sitesindeki CAPTCHA resmini çekmeyi, Base64 formatını çözmeyi ve Pytesseract ile metne dönüştürmeyi anlatacağız.
Bu örnekte, Python kullanarak web sitesindeki CAPTCHA resmini çekmeyi, Base64 formatını çözmeyi ve Pytesseract ile metne dönüştürmeyi anlatacağız.
1) Gerekli Kütüphaneler
Python'da gerekli kütüphaneleri projeye dahil ediyoruz.
Python:
import pytesseract
import requests
import base64
from bs4 import BeautifulSoup
from PIL import Image
2) HTTP İsteği Gönderme
Cookie yönetimini kolaylaştırmak için Session kullanıyoruz.
Python:
session = requests.Session()
url = "http://localhost/Ders/index.php"
response = session.get(url)
3) CAPTCHA Resmini Alma ve Çözme
BeautifulSoup ile HTML içerisindeki Base64 kodlu resmi alıyor, çözüyor ve Pytesseract ile metne dönüştürüyoruz.
Python:
soup = BeautifulSoup(response.text, "html.parser")
base64_element = soup.find("img", {"id": "imgKod"})
base64_code = base64_element["src"].split(",")[-1]
image_data = base64.b64decode(base64_code)
with open("decoded_image.png", "wb") as image_file:
image_file.write(image_data)
image = Image.open("decoded_image.png")
captcha_text = pytesseract.image_to_string(image)
captcha_text = captcha_text.replace("\n", "").replace("\x0c", "").strip()
print(captcha_text)
Kodun Tamamı
Python:
import pytesseract
import requests
import base64
from bs4 import BeautifulSoup
from PIL import Image
session = requests.Session()
url = "http://localhost/Ders/index.php"
response = session.get(url)
soup = BeautifulSoup(response.text, "html.parser")
base64_element = soup.find("img", {"id": "imgKod"})
base64_code = base64_element["src"].split(",")[-1]
image_data = base64.b64decode(base64_code)
with open("decoded_image.png", "wb") as image_file:
image_file.write(image_data)
image = Image.open("decoded_image.png")
captcha_text = pytesseract.image_to_string(image)
captcha_text = captcha_text.replace("\n", "").replace("\x0c", "").strip()
print(captcha_text)
[/CODE
[COLOR=#E53935][B]Not:[/B][/COLOR]
Bu örnek yalnızca [B]kendi uygulamalarınız[/B] veya [B]izinli test ortamları[/B] üzerinde OCR kullanımını göstermek amacıyla hazırlanmıştır. Gerçek web sitelerindeki CAPTCHA sistemleri, otomasyonu engellemek için tasarlanmıştır ve bunları izinsiz olarak aşmaya çalışmak hizmet şartlarını ihlal edebilir.
[/CENTER][/HEADING]
[CENTER][/CENTER]