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
= "O00337"
uniprot_id = fetch_uniprot_data(uniprot_id)
data display_uniprot_data(data)
UniProt ID: O00337
Protein Name: Sodium/nucleoside cotransporter 1
Organism: Homo sapiens
Function: Sodium and pyrimidine nucleoside symporter of the plasma membrane that imports uridine, thymidine and cytidine into cells by coupling their transport to the transmembrane sodium electrochemical gradient. Also transports adenosine, an atypical substrate transported with high apparent affinity, but low maximum velocity. Therefore, exhibits the transport characteristics of the nucleoside transport system cit or N2 subtype (N2/cit) (PubMed:10455109, PubMed:14701834, PubMed:15194733, PubMed:21795683, PubMed:21998139, PubMed:30658162, PubMed:32126230, PubMed:9124315). Involved in renal nucleoside (re)absorption (PubMed:30658162)