2015년 4월 9일 목요일

NCBI ftp에서 genome list만 가져오기

NCBI의 ftp site에 점점 많은 유전체 정보가 등록되면서 웹 브라우저로 ftp를 접속하여 전체 목록을 뽑아보는 일이 점점 어려워지고 있다. 아마 파이썬으로 어떻게든 스크립트를 짜면 ftp://ftp.ncbi.nlm.nih.gov/genomes/Bacteria에 있는 폴더 목록을 빼 오는 것이 가능할 것이다.

파이썬 찾아보기는 귀찮으니 웹 검색을 해 보자.

텍스트 파일을 하나 만들어서 다음의 내용을 저장하고 ncbi_genomes.lftp라고 저장한다.

open ftp.ncbi.nlm.nih.gov
user anonymous my_email@aaa.com
cd genomes/Bacteria
#cd genomes/Bacteria_DRAFT
ls
#find
exit

(#로 시작하는 행은 필요에 맞게 적절히 해제하라는 뜻이다. 예를 들어 find 명령을 쓰면 하부 내용까지 전부 recursive하게 나온다.)

그러면 다음과 같이 실행하면 된다.

$ lftp -f ncbi_genomes.lftp | tee todays_list.txt

tee 명령을 사용했으므로 파일로 기록됨과 동시에 표준출력(화면)으로 뿌려진다. 방금 받아서 라인 수만 세어 보았다. 2809개이다.

이렇게 하여 각 균주에 대한 정확한 폴더를 알아낸 다음, 다음과 같이 웹브라우저 주소창에 구체적인 URL을 적기만 해도 훨씬 수월한 파일 접근이 가능하다. 

ftp://ftp.ncbi.nlm.nih.gov/genomes/Bacteria/_path_to_genome_

댓글 없음: