Code
import requests
import urllib3
urllib3.disable_warnings()
def fetch_uniprot_data(uniprot_id):
= f"https://rest.uniprot.org/uniprotkb/{uniprot_id}.json"
url = requests.get(url, verify=False) # Disable SSL verification
response # Raise an error for bad status codes
response.raise_for_status() return response.json()
def display_uniprot_data(data):
= data.get('primaryAccession', 'N/A')
primary_accession = data.get('proteinDescription', {}).get('recommendedName', {}).get('fullName', {}).get('value', 'N/A')
protein_name = data.get('gene', [{'geneName': {'value': 'N/A'}}])[0]['geneName']['value']
gene_name = data.get('organism', {}).get('scientificName', 'N/A')
organism
= next((comment for comment in data.get('comments', []) if comment['commentType'] == "FUNCTION"), None)
function_comment = function_comment['texts'][0]['value'] if function_comment else 'N/A'
function
# 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
= "Q9H222"
uniprot_id = fetch_uniprot_data(uniprot_id)
data display_uniprot_data(data)
UniProt ID: Q9H222
Protein Name: ATP-binding cassette sub-family G member 5
Organism: Homo sapiens
Function: ABCG5 and ABCG8 form an obligate heterodimer that mediates Mg(2+)- and ATP-dependent sterol transport across the cell membrane (PubMed:27144356). Plays an essential role in the selective transport of dietary plant sterols and cholesterol in and out of the enterocytes and in the selective sterol excretion by the liver into bile (PubMed:11099417, PubMed:11138003, PubMed:15054092, PubMed:27144356). Required for normal sterol homeostasis (PubMed:11099417, PubMed:11138003, PubMed:15054092). The heterodimer with ABCG8 has ATPase activity (PubMed:16893193, PubMed:20210363, PubMed:27144356)