πŸ”“ Как ΠΎΠ±ΠΎΠΉΡ‚ΠΈ ΠΊΠ°ΠΏΡ‡Ρƒ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅: эффСктивныС способы для программистов

Для ΠΎΠ±Ρ…ΠΎΠ΄Π° ΠΊΠ°ΠΏΡ‡ΠΈ Π½Π° ΠŸΠΈΡ‚ΠΎΠ½Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ pytesseract Π² связкС с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ OpenCV. Π­Ρ‚ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Π²Π°Ρ‚ΡŒ тСкст с ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ.


import cv2
import pytesseract

# Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ с ΠΊΠ°ΠΏΡ‡Π΅ΠΉ
image = cv2.imread('captcha.png')

# ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠΉΡ‚Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² Ρ‡Π΅Ρ€Π½ΠΎ-Π±Π΅Π»ΠΎΠ΅
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

# ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅ Π°Π΄Π°ΠΏΡ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΏΠΎΡ€ΠΎΠ³ для Π±ΠΈΠ½Π°Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ изобраТСния
_, binary = cv2.threshold(gray, 0, 255, cv2.THRESH_BINARY_INV | cv2.THRESH_OTSU)

# Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ pytesseract для распознавания тСкста
captcha_text = pytesseract.image_to_string(binary)

# Π’Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ распознанный тСкст
print(captcha_text)
  

Π’ этом ΠΊΠΎΠ΄Π΅ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ pytesseract.image_to_string() для распознавания тСкста Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ ΠΊΠ°ΠΏΡ‡ΠΈ. ΠŸΠ΅Ρ€Π΅Π΄ распознаваниСм ΠΌΡ‹ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅ΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² Ρ‡Π΅Ρ€Π½ΠΎ-Π±Π΅Π»ΠΎΠ΅ ΠΈ примСняСм Π°Π΄Π°ΠΏΡ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΏΠΎΡ€ΠΎΠ³ для Π±ΠΈΠ½Π°Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ тСкст.

НадСюсь, это ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ ΠΊΠ°ΠΏΡ‡Ρƒ Π½Π° ΠŸΠΈΡ‚ΠΎΠ½Π΅!

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Как ΠΎΠ±ΠΎΠΉΡ‚ΠΈ ΠΊΠ°ΠΏΡ‡Ρƒ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅

Π”ΠΎΠ±Ρ€ΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°Ρ‚ΡŒ Π² Π½Π°ΡˆΡƒ ΡΡ‚Π°Ρ‚ΡŒΡŽ, Π³Π΄Π΅ ΠΌΡ‹ расскаТСм Π²Π°ΠΌ, ΠΊΠ°ΠΊ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ ΠΊΠ°ΠΏΡ‡Ρƒ ΠΏΡ€ΠΈ использовании языка программирования Python. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΊΠ°ΠΏΡ‡Ρƒ являСтся ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ ΠΌΠ΅Ρ€ΠΎΠΉ бСзопасности Π½Π° ΠΌΠ½ΠΎΠ³ΠΈΡ… Π²Π΅Π±-сайтах для отличия ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² ΠΎΡ‚ людСй. ΠžΠ±ΠΎΠΉΡ‚ΠΈ ΠΊΠ°ΠΏΡ‡Ρƒ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… сцСнариях, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ автоматизация дСйствий Π½Π° Π²Π΅Π±-сайтах ΠΈΠ»ΠΈ сбор Π΄Π°Π½Π½Ρ‹Ρ…. Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим нСсколько ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для ΠΎΠ±Ρ…ΠΎΠ΄Π° Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€Π΅Π³Ρ€Π°Π΄Ρ‹.

1. ИспользованиС сторонних Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ

Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ сторонниС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π²Π°ΠΌ с ΠΎΠ±Ρ…ΠΎΠ΄ΠΎΠΌ ΠΊΠ°ΠΏΡ‡ΠΈ. Одна ΠΈΠ· Π½ΠΈΡ… - это Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° pytesseract, которая обСспСчиваСт простой интСрфСйс для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ OCR (оптичСскоС распознаваниС символов) Tesseract.


    import pytesseract
    from PIL import Image

    image_path = 'captcha_image.png'
    captcha_image = Image.open(image_path)
    captcha_text = pytesseract.image_to_string(captcha_image)
    print("ВСкст Π½Π° ΠΊΠ°ΠΏΡ‡Π΅:", captcha_text)
    

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ pytesseract для извлСчСния тСкста с изобраТСния ΠΊΠ°ΠΏΡ‡ΠΈ. ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ этот ΠΊΠΎΠ΄, ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Ρƒ вас установлСны Π½ΡƒΠΆΠ½Ρ‹Π΅ зависимости, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Tesseract. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈΡ…, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:


    pip install pytesseract pillow
    sudo apt install tesseract-ocr
    

2. ИспользованиС сСрвисов распознавания ΠΊΠ°ΠΏΡ‡ΠΈ

Если Π²Π°ΠΌ Π½Π΅ хочСтся Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ с установкой Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΈ зависимостСй, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ сСрвисами Π²Π΅Π±-распознавания ΠΊΠ°ΠΏΡ‡ΠΈ, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ AntiCaptcha ΠΈΠ»ΠΈ 2Captcha. Π­Ρ‚ΠΈ сСрвисы ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ API для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ изобраТСния ΠΊΠ°ΠΏΡ‡ΠΈ ΠΈ получСния Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°.


    import requests

    def solve_captcha(image_path):
        api_key = 'Π’Π°Ρˆ API-ΠΊΠ»ΡŽΡ‡'
        post_url = 'https://api.anti-captcha.com/image-to-text'

        with open(image_path, 'rb') as image_file:
            image_data = image_file.read()

        response = requests.post(post_url, data=image_data, headers={
            'Content-type': 'application/octet-stream',
            'Accept': 'application/json',
            'Authorization': f'Bearer {api_key}'
        })

        if response.ok:
            result = response.json()
            captcha_text = result['text']
            return captcha_text
        else:
            return None

    # ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:
    captcha_text = solve_captcha('captcha_image.png')
    print("ВСкст Π½Π° ΠΊΠ°ΠΏΡ‡Π΅:", captcha_text)
    

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ отправляСм ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΏΡ‡ΠΈ Ρ‡Π΅Ρ€Π΅Π· API сСрвиса AntiCaptcha, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ваш API-ΠΊΠ»ΡŽΡ‡. Π’ ΠΎΡ‚Π²Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ тСкст с распознанной ΠΊΠ°ΠΏΡ‡ΠΈ. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΠ»ΠΈ `'Π’Π°Ρˆ API-ΠΊΠ»ΡŽΡ‡'` Π½Π° ваш Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹ΠΉ API-ΠΊΠ»ΡŽΡ‡, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈ рСгистрации Π½Π° сСрвисС.

3. МашинноС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΈ Π½Π΅ΠΉΡ€ΠΎΠ½Π½Ρ‹Π΅ сСти

Π‘ использованиСм машинного обучСния ΠΈ Π½Π΅ΠΉΡ€ΠΎΠ½Π½Ρ‹Ρ… сСтСй Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊΠ°ΠΏΡ‡Ρƒ. Π­Ρ‚ΠΎ Π±ΠΎΠ»Π΅Π΅ слоТный ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΠΉ знания Π² области Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ³ΠΎ обучСния ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ модСль машинного обучСния, которая Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Π²Π°Ρ‚ΡŒ ΠΊΠ°ΠΏΡ‡Ρƒ ΠΈ ΠΏΡ€Π΅Π΄ΡΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π΅Π΅ тСкст.

Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ дСмонстрируСт основы использования Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ TensorFlow для создания ΠΈ обучСния Π½Π΅ΠΉΡ€ΠΎΠ½Π½ΠΎΠΉ сСти:


    import tensorflow as tf

    # Код для создания, обучСния ΠΈ использования Π½Π΅ΠΉΡ€ΠΎΠ½Π½ΠΎΠΉ сСти
    # ...

    # ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования ΠΎΠ±ΡƒΡ‡Π΅Π½Π½ΠΎΠΉ Π½Π΅ΠΉΡ€ΠΎΠ½Π½ΠΎΠΉ сСти для распознавания ΠΊΠ°ΠΏΡ‡ΠΈ
    captcha_image = load_image('captcha_image.png')
    captcha_text = neural_network.predict(captcha_image)
    print("ВСкст Π½Π° ΠΊΠ°ΠΏΡ‡Π΅:", captcha_text)
    

Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ дСмонстрируСт Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ для построСния ΠΈ обучСния ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π΅ΠΉΡ€ΠΎΠ½Π½ΠΎΠΉ сСти для распознавания ΠΊΠ°ΠΏΡ‡ΠΈ.

4. Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹

БущСствуСт Ρ‚Π°ΠΊΠΆΠ΅ мноТСство Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² для ΠΎΠ±Ρ…ΠΎΠ΄Π° ΠΊΠ°ΠΏΡ‡ΠΈ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ использованиС оптичСских ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² распознавания символов (OCR), ΠΎΠ±Ρ…ΠΎΠ΄ Ρ‡Π΅Ρ€Π΅Π· скрипты Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Selenium), взаимодСйствиС с API Π²Π΅Π±-сСрвисов ΠΈ Ρ‚. Π΄. Π’Ρ‹Π±ΠΎΡ€ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° зависит ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ситуации ΠΈ рСсурсов, доступных Π²Π°ΠΌ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ вас Π΅ΡΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ΄Π΅ΠΈ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ ΠΊΠ°ΠΏΡ‡Ρƒ Π½Π° языкС программирования Python. ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΎΠ±Ρ…ΠΎΠ΄ ΠΊΠ°ΠΏΡ‡ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅Π·Π°ΠΊΠΎΠ½Π½Ρ‹ΠΌ ΠΈΠ»ΠΈ Π½Π°Ρ€ΡƒΡˆΠ°Ρ‚ΡŒ условия использования Π²Π΅Π±-сайтов. ВсСгда провСряйтС Π·Π°ΠΊΠΎΠ½Π½ΠΎΡΡ‚ΡŒ ΠΈ соотвСтствиС своСго использования с ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌΠΈ ΠΈ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΎΠΉ Π²Π΅Π±-сайта, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ любой ΠΌΠ΅Ρ‚ΠΎΠ΄.

Π£Π΄Π°Ρ‡ΠΈ Π² ΠΎΠ±Ρ…ΠΎΠ΄Π΅ ΠΊΠ°ΠΏΡ‡ΠΈ ΠΈ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Π²Π°ΡˆΠΈΡ… Π·Π°Π΄Π°Ρ‡!

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

ΠžΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ парсингу Π½Π° Python | ΠŸΠ°Ρ€ΡΠΈΠ½Π³ Π±Π΅Π· обнаруТСния | ΠŸΠ°Ρ€ΡΠΈΠ½Π³ CloudFlare | Selenium, CloudFlare

НСйросСти ΠΈ Recaptcha, бСсплатно ΠΈ быстро + Π°Π²Ρ‚ΠΎΡ€Π΅Π³ Steam + ООП Python: ВсС ΠΎ наслСдовании

Π’Π·Π»ΠΎΠΌΠ°ΠΉ reCAPTCHA V2: РаскрываСм сСкрСты Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

πŸ”’ Как ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² python?

πŸš€ Как Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ UI Π² Python: пошаговоС руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

🧩 Как Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ элСмСнт Π² стСк ΠΏΠΈΡ‚ΠΎΠ½: простой Π³Π°ΠΉΠ΄ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

πŸ”“ Как ΠΎΠ±ΠΎΠΉΡ‚ΠΈ ΠΊΠ°ΠΏΡ‡Ρƒ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅: эффСктивныС способы для программистов

πŸ”₯ Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π½Π΅Π½ΡƒΠΆΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² Π² Python: Π»Π΅Π³ΠΊΠΈΠΉ способ

πŸ”§ Как ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Beautifulsoup Python: ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

πŸ” Как Π½Π°ΠΉΡ‚ΠΈ ΠΌΠΎΠ΄Ρƒ Π² массивС Python? ΠŸΠΎΠ»Π΅Π·Π½Ρ‹Π΅ совСты ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ πŸ”Ž