Despite the correction when the code is run, everything is
response returned: No contracts found

import requests
import time

bscscan_api_key = 'CXTB4IUT31N836G93ZI3YQBEWBQEGGH5QS'

def get_verified_contracts_in_page(page, start_block, end_block):
    url = f'https://api.bscscan.com/api?module=account&action=getsourcecode&page={page}&offset=100&sort=desc&apikey={bscscan_api_key}'
    try:
        response = requests.get(url, timeout=30)
        response.raise_for_status()
    except requests.exceptions.RequestException as e:
        print(f'Error in API request: {e}')
        time.sleep(5)  # Wait for 5 seconds before retrying the request
        return get_verified_contracts_in_page(page, start_block, end_block)

    data = response.json()
    if data['status'] == '1':
        contracts = data['result']
        return [contract for contract in contracts if start_block <= int(contract['BlockNumber']) <= end_block]

    return []


def get_last_100_verified_contracts():
    contracts = []
    start_block = 28398360  # Replace with your desired start block
    end_block = 28399363   # Replace with your desired end block

    page = 1

    while True:
        contracts_in_page = get_verified_contracts_in_page(page, start_block, end_block)
        if not contracts_in_page:
            break
        contracts.extend(contracts_in_page)
        page += 1

    return contracts[:10]


contracts = get_last_100_verified_contracts()
if contracts:
    print("Last 100 verified contract addresses on the Binance Smart Chain network:")
    for c in contracts:
        print(c)
else:
    print("No contracts found.")

Why is this happening and how to fix it?