33 lines
1.1 KiB
Python
33 lines
1.1 KiB
Python
|
from Bio import Entrez, SeqIO
|
||
|
|
||
|
# Ustaw swój adres e-mail (wymagany przez NCBI)
|
||
|
Entrez.email = "your_email@example.com"
|
||
|
|
||
|
def download_genome(genome_id, file_name):
|
||
|
"""
|
||
|
Pobierz sekwencję genomu z NCBI i zapisz ją jako plik FASTA.
|
||
|
|
||
|
Parameters:
|
||
|
genome_id (str): ID genomu w bazie NCBI.
|
||
|
file_name (str): Nazwa pliku, do którego zostanie zapisana sekwencja.
|
||
|
"""
|
||
|
try:
|
||
|
# Pobierz rekord z bazy danych NCBI
|
||
|
with Entrez.efetch(db="nucleotide", id=genome_id, rettype="fasta", retmode="text") as handle:
|
||
|
genome_seq = SeqIO.read(handle, "fasta")
|
||
|
|
||
|
# Zapisz rekord do pliku FASTA
|
||
|
with open(file_name, "w") as output_handle:
|
||
|
SeqIO.write(genome_seq, output_handle, "fasta")
|
||
|
|
||
|
print(f"Genom zapisany do pliku: {file_name}")
|
||
|
|
||
|
except Exception as e:
|
||
|
print(f"Wystąpił błąd: {e}")
|
||
|
|
||
|
# Przykład użycia
|
||
|
genome_id = "NC_000932" # Przykładowe ID genomu (np. Arabidopsis thaliana chloroplast)
|
||
|
file_name = "arabidopsis_genome.fasta"
|
||
|
download_genome(genome_id, file_name)
|
||
|
|