babilonczyk commited on
Commit
b1a1cbf
·
verified ·
1 Parent(s): b99faed

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +10 -6
app.py CHANGED
@@ -2,6 +2,7 @@ import gradio as gr
2
  import sqlite3
3
  import os
4
  import requests
 
5
 
6
  HF_DB_URL = "https://huggingface.co/datasets/babilonczyk/swiss_prot/resolve/main/proteins.db"
7
  LOCAL_DB_PATH = "proteins.db"
@@ -44,12 +45,15 @@ print_schema()
44
  # Query function
45
  def search_by_sequence(seq: str) -> str:
46
  seq = seq.strip().upper()
47
- cursor.execute("SELECT * FROM proteins WHERE sequence = ?", (seq,))
48
- row = cursor.fetchone()
49
- if not row:
50
- return "No match found."
51
- col_names = [desc[0] for desc in cursor.description]
52
- return "\n".join(f"{k}: {v}" for k, v in zip(col_names, row))
 
 
 
53
 
54
  # Gradio app
55
  demo = gr.Interface(
 
2
  import sqlite3
3
  import os
4
  import requests
5
+ import json
6
 
7
  HF_DB_URL = "https://huggingface.co/datasets/babilonczyk/swiss_prot/resolve/main/proteins.db"
8
  LOCAL_DB_PATH = "proteins.db"
 
45
  # Query function
46
  def search_by_sequence(seq: str) -> str:
47
  seq = seq.strip().upper()
48
+ cursor.execute("SELECT json FROM proteins")
49
+ for (json_blob,) in cursor.fetchall():
50
+ try:
51
+ data = json.loads(json_blob)
52
+ if data.get("sequence", "").upper() == seq:
53
+ return json.dumps(data, indent=2)
54
+ except json.JSONDecodeError:
55
+ continue
56
+ return "No match found."
57
 
58
  # Gradio app
59
  demo = gr.Interface(