Code
import requests
import urllib3
urllib3.disable_warnings()
def fetch_uniprot_data(uniprot_id):
    url = f"https://rest.uniprot.org/uniprotkb/{uniprot_id}.json"
    response = requests.get(url, verify=False)  # Disable SSL verification
    response.raise_for_status()  # Raise an error for bad status codes
    return response.json()
def display_uniprot_data(data):
    primary_accession = data.get('primaryAccession', 'N/A')
    protein_name = data.get('proteinDescription', {}).get('recommendedName', {}).get('fullName', {}).get('value', 'N/A')
    gene_name = data.get('gene', [{'geneName': {'value': 'N/A'}}])[0]['geneName']['value']
    organism = data.get('organism', {}).get('scientificName', 'N/A')
    
    function_comment = next((comment for comment in data.get('comments', []) if comment['commentType'] == "FUNCTION"), None)
    function = function_comment['texts'][0]['value'] if function_comment else 'N/A'
    # Printing the data
    print(f"UniProt ID: {primary_accession}")
    print(f"Protein Name: {protein_name}")
    print(f"Organism: {organism}")
    print(f"Function: {function}")
# Replace this with the UniProt ID you want to fetch
uniprot_id = "Q9H4B8"
data = fetch_uniprot_data(uniprot_id)
display_uniprot_data(data)UniProt ID: Q9H4B8
Protein Name: Dipeptidase 3
Organism: Homo sapiens
Function: Lacks dipeptidase activity and is unable to hydrolyze cystinyl-bis-glycine, leukotriene D4 and the beta-lactam antibiotic imipenem (PubMed:32325220). The absence of activity may be due to the inability of asparagine (instead of aspartate found in DPEP1/2) at position 359 to function as the acid/base catalyst and activate the nucleophilic water/hydroxide (PubMed:32325220). A tyrosine (instead of histidine) at position 269 reduces affinity for the beta zinc and may cause substrate steric hindrance (PubMed:32325220)