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
= "Q8NI17"
uniprot_id = fetch_uniprot_data(uniprot_id)
data display_uniprot_data(data)
UniProt ID: Q8NI17
Protein Name: Interleukin-31 receptor subunit alpha
Organism: Homo sapiens
Function: Associates with OSMR to form the interleukin-31 receptor which activates STAT3 and to a lower extent STAT1 and STAT5 (PubMed:11877449, PubMed:14504285, PubMed:15194700, PubMed:15627637). May function in skin immunity (PubMed:15184896). Mediates IL31-induced itch, probably in a manner dependent on cation channels TRPA1 and TRPV1 (By similarity). Positively regulates numbers and cycling status of immature subsets of myeloid progenitor cells in bone marrow in vivo and enhances myeloid progenitor cell survival in vitro (By similarity)