레이블이 COVID인 게시물을 표시합니다. 모든 게시물 표시
레이블이 COVID인 게시물을 표시합니다. 모든 게시물 표시

목요일, 5월 28, 2026

GISAID 크롤링 테스트

지난번 잠깐 검색해봤던 gisaid 사이트에서 covid19의 DNA서열을 다운로드하는 github의 코드들이 진짜 잘 작동하고 있는지를 확인해서 기존에 잘 작동하고 있는 스크립트가 있는데 굳이 다시 covid서열 다운로드 받는 스크립트 만든다고 돈(aka 토큰)을 낭비하는 것은 아닌지 한번 확인해 보았습니다.

아.. 근데 왜 gisaid에서 covid 19 서열을 2026년도에도 다운로드 받고 있어야돼? 라고 의아해하는 분들을 위해서 이유를 간단히 말씀드리자면..

1. 그냥 매일, 매달 아직도 새롭게 COVID19 서열이 올라오는거 수집해보고 싶은 분들이 있을 수 있지 않겠습니까?

2. COVID19 진단키트 업체들은 1년에 한번인가 두번씩 현재 생산, 판매하고 있는 진단키트가 현재 유행하고 있는 변종도 잘 탐지가 되는지 증거자료를 제출해야하는데 이때 실 검체를 사용하지 못할 수 도 있습니다. 적어도 in-silico로 검증을 해야하는데 이럴 때 gisaid 홈페이지에서 서열을 다운로드 해서 분석을 해야합니다. 이럴 때 미리미리 잘 정리된 분석할 서열들이 내 손에 있으면 편하겠죠? 그래서 하는겁니다.


그래서 다시 본론을 돌아와서

github에 공개되어 있는 스크립트들을 다음과 같이 4개를 확인해 보았습니다.

https://github.com/poeli/EpiCoV_downloader

https://github.com/enviro-lab/gisaid-download

https://github.com/dubc461/GID

https://github.com/bioinf-mcb/gisaid-scrapper


그리고 결론을 먼저 말씀드리자면 (이미 다들 알고 있다 싶이)"새로 만들어야합니다." 되겠습니다. ㅋ 

일단 COVID19가 휩쓸던 때에 만든거라서 파이썬 버전들도 예전버전이고, gisaid 홈페이지가 이전보다 많이 교묘해졌습니다. 그래서 기존의 코드들은 작동을 잘 안하더라구요(물론 그때 당시에는 잘 작동했을 지 모르겠지만... 조금 지나서 작동 안했을 것 같습니다.)

물론 gisaid말고 NCBI에서도 COVID19 DNA서열은 다운로드 받을 수 있습니다. 약 920만개 서열로 gisaid에 적재되어 있는 17백만개 보다는 적은데 다운로드가 조금 수월합니다. 다만 최신 변종 서열들은 NCBI에는 빠르게 업데이트가 되지 않아서 위에 언급한 두번째 이유를 위해서는 gisaid를 활용해야합니다.

그럼 기존 공개되어 있는 다운로드 스크립트에 수행 결과에 대해서 얘기해보죠 :)


1. EpiCoV_downloader

github: https://github.com/poeli/EpiCoV_downloader

설치

$ git clone https://github.com/poeli/EpiCoV_downloader.git

$ cd EpiCoV_downloader/

$ conda env create -f environment.yml

$ conda activate gisaid

(gisaid) gwlee@gwlee:~/EpiCoV_downloader$


명령어
./gisaid_EpiCoV_downloader.py -u <user_id> -p <user_pw> -cs 2019-12-26 -ce 2019-12-30 -hc -le -cg

에러
1) 173줄에서 오류 발생
# 기존 코드
driver = webdriver.Firefox(
    firefox_profile=profile, options=options, firefox_binary=ffbin
)
------------------------------------------------------------------------------------------
# 수정된 코드 (Selenium 4+ 문법)
options.profile = profile  # 프로필을 options에 설정
if ffbin:
    options.binary_location = ffbin  # 바이너리 경로를 options에 설정

# webdriver.Firefox에는 오직 options만 전달합니다.
driver = webdriver.Firefox(options=options)

2) conda에 설치된 geckodriver이 오래전 버전으로 업데이트 필요
$ conda update -c conda-forge geckodriver

3) firefox headless 
# 기존 코드 어딘가에 정의되어 있을 options 객체에 아래 라인을 추가합니다.
options.add_argument('--headless')  # 화면 없이 실행하는 옵션
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')
# 그 후 기존 코드대로 실행
driver = webdriver.Firefox(options=options)

4) 파이어폭스 오류
#파이어폭스 관련된 라이브러리 설치 필요
sudo apt-get update
sudo apt-get install -y firefox

5) 그래픽 라이브러리 설치 
# 헤드리스 모드라 하더라도 가상의 그래픽 라이브러리가 필요합니다.
sudo apt-get install -y libgtk-3-0
# 1. Xvfb 및 관련 라이브러리 설치 (우분투 기준)
sudo apt-get update
sudo apt-get install -y xvfb xauth xfonts-base
# 2. 가상 디스플레이 백그라운드 실행 (디스플레이 번호 :99)
Xvfb :99 -ac -screen 0 1280x1024x24 &
# 3. 환경 변수에 디스플레이 등록
export DISPLAY=:99
# 4. 이제 파이썬 스크립트 다시 실행
python gisaid_EpiCoV_downloader.py -u <user_id> -p <user_pw> -cs 2019-12-26 -ce 2019-12-30 -hc -le -cg

6) timeout으로 프록시를 사용하지 않도록 코드 수정
# 기존 options 설정 부근에 추가
options.add_argument('--headless')
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')
# 로컬 통신은 프록시를 거치지 않도록 설정
options.set_preference("network.proxy.type", 0)  # 0은 프록시 없음(Direct)을 의미
options.add_argument('--disable-gpu')            # 리눅스 서버에서 불필요한 GPU 가속 끄기
driver = webdriver.Firefox(options=options)

7) 라이브러리 호환 문제로 python 3.8에서 3.12로 업그레드필요
# 1. environment.yml을 기반으로 gisaid_stable 이름의 환경 생성
conda env create -f environment.yml -n gisaid_stable
# 2. 생성된 환경 활성화
conda activate gisaid_stable
# 3. 이 환경의 파이썬 버전을 3.12로 다운그레이드 및 필수 드라이버 설치
$ conda install python=3.12 -y
$ conda install -c conda-forge geckodriver -y
$ conda install -c conda-forge geckodriver selenium urllib3 requests pandas -y
$ ./gisaid_EpiCoV_downloader.py  -u <user_id> -p <user_pw> -cs 2019-12-26 -ce 2019-12-30 -hc -le -cg

결과: Error Orz



2. gisaid-download

github: https://github.com/enviro-lab/gisaid-download

설치

$ conda create -n gisaid python=3.10

$ conda activate gisaid

$ pip install gisaid-download

$ python -m pip install "setuptools<81"

명령어

$ gisaid_download --example -o gisaid/directory


결과: 작동도 안하고 미국주에서 발생한 서열만 수집?? 코드안에 미국 주만 리스트업 되어 있음



3. GID

github: https://github.com/dubc461/GID

설치

$ git clone https://github.com/dubc461/GID.git

$ cd GID

$ conda env create -f environment.yml

$ conda activate gid


결과: selenium 버전 문제가 있는 듯 작동안함



4. gisaid-scrapper

github: https://github.com/bioinf-mcb/gisaid-scrapper.git

설치

$ git clone https://github.com/bioinf-mcb/gisaid-scrapper.git

$ conda create -n scrapper python=3

$ conda activate scrapper

$ pip install -r requirements.txt

명령어

python3 scrap.py -u <user_id> -p <user_pw> -w

에러

1) urllib3 버전 오류

$ pip uninstall urllib3

$ pip install "urllib3<2"


2) credentials.txt 파일 생성

credentials.txt 파일 내에 userid와 passwd 정보를 넣어서 생성

python3 scrap.py -w -q -d whole_genome -f credentials.txt

 

결과: 한시간정도 작동하다가 timeout으로 실행 중단


GISAIDR과 같은 경우는 R기반의 스크립트라서 파이썬 기반의 스크립트만 테스트하느라고 일단 배제하였습니다. 결과적으로는 기존의 스크립트들은 파이썬 버전이 낮아 에러가 발생하는 경우가 많았고, 버전 문제가 없는 경우 gisaid 사이트가 무작위적인 크롤링이나 스크랩핑을 막고자 사이트를 변경한 내용이 반영되지 못해서 제대로 작동되지 않는 문제가 있는 것 같았습니다.

고로 현재 gisaid 사이트에 맞는 크롤링 스크립트가 필요할것 같습니다. :)

※ 그럼 다음 글은 개선된 스크립트를 직접 개발해보겠다 정도이지 않을까하네요. :)



출처: @ye._.vely618

화요일, 7월 02, 2024

다시 엄습해 올 팬데믹 대비를 위해 공항 폐수를 이용하면 어떻겠습니까?

6월 마지막날에 올렸던 내용과 연결된 논문을 다시 가져와봤습니다. 

제목은 "Feasibility of wastewater-based detection of emergent pandemics through a global network of airports" 으로 공항의 하수처리장을 모니터링 하면 다시 팬데믹이 왔을 때 조기 감시가 가능하지 않겠냐? 라는 내용 되겠습니다.

DOI: 10.1371/journal.pgph.0003010


gemini

## 공항 폐수 감시: 신흥 팬데믹 조기 감지의 새로운 가능성

최근 전 세계적인 공중 보건 위협이 증가하면서, 신흥 팬데믹을 조기에 감지하고 확산을 막는 것이 중요해지고 있습니다. 이러한 노력의 일환으로, 과학자들은 공항 폐수를 이용한 감시 시스템 개발에 주목하고 있습니다.

**공항 폐수 감시란 무엇인가?**

공항 폐수 감시는 항공기에서 내려오는 폐수를 분석하여 바이러스나 박테리아와 같은 병원체의 존재 여부를 확인하는 방법입니다. 항공기는 전 세계를 오가기 때문에, 공항 폐수는 다양한 지역에서 유입되는 병원체를 감지하는 데 효과적인 도구가 될 수 있습니다.

**공항 폐수 감시의 장점:**

* **조기 감지:** 공항 폐수 감시는 팬데믹이 시작 단계에서 바이러스를 감지할 수 있기 때문에, 신속한 대응 및 방지 조치를 취할 수 있도록 합니다.

* **광범위한 감시:** 공항 폐수 감시는 한 국가 또는 지역에 국한되지 않고, 전 세계적인 수준에서 팬데믹을 감시할 수 있습니다.

* **비교적 저렴한 비용:** 공항 폐수 감시는 다른 감시 방법에 비해 비교적 저렴한 비용으로 운영될 수 있습니다.

**공항 폐수 감시의 과제:**

* **기술적 한계:** 현재 공항 폐수 감시 기술은 모든 병원체를 정확하게 검출할 수 있는 수준은 아닙니다.

* **윤리적 문제:** 개인 정보 보호 및 데이터 보안과 같은 윤리적 문제를 고려해야 합니다.

* **국제 협력 필요:** 효과적인 공항 폐수 감시 시스템 구축을 위해서는 국제적인 협력이 필요합니다.

**연구 결과:**

최근 연구에 따르면, 공항 폐수 감시는 신흥 팬데믹을 조기에 감지하는 데 효과적인 전략이 될 수 있음을 시사합니다. 특히, 아시아, 유럽, 북미의 주요 공항에서 협력적으로 공항 폐수 감시를 수행하면 감지 가능성이 크게 향상됩니다.

**결론:**

공항 폐수 감시는 신흥 팬데믹을 조기에 감지하고 확산을 막는 데 유망한 방법입니다. 하지만, 기술적 한계, 윤리적 문제, 국제 협력 필요성 등 해결해야 할 과제도 존재합니다. 지속적인 연구 및 개발을 통해 공항 폐수 감시 시스템을 개선하고, 전 세계적인 공중 보건 위협에 대비해야 합니다.


clova-x

블로그 글 제목: 항공기 폐수 감시를 통한 전염병 조기 검출의 가능성

 항공기 폐수 감시를 통해 전염병을 조기에 검출하는 것이 가능하다는 것을 알 수 있습니다. 항공기 폐수 감시를 통해 다양한 병원균을 검출할 수 있다면, 전염병 예방에 큰 도움이 될 수 있습니다. 또한, 항공기 폐수 감시를 통해 전염병의 초기 단계에서 바이러스를 검출할 수 있다면, 신속한 대응이 가능해져 질병의 확산을 막을 수 있습니다. 이 연구는 항공기 폐수 감시를 통해 전염병을 조기에 검출하는 것이 가능하다는 것을 보여주었으며, 이를 통해 전염병 예방 및 대응에 대한 새로운 전략을 제시했습니다. 또한, 항공기 폐수 감시가 다른 방법에 비해 비용과 시간이 적게 소요된다는 장점이 있어, 전염병 예방 및 대응에 대한 경제적인 측면에서도 큰 의의가 있습니다.

항공기 폐수 감시를 통해 전염병을 조기에 검출하는 것은 다음과 같은 장점이 있습니다.

1. 신속한 대응: 항공기 폐수 감시를 통해 전염병을 조기에 검출하면, 신속한 대응이 가능해집니다. 예를 들어, 항공기 탑승객 중에 전염병 환자가 발생한 경우, 해당 항공기의 운항을 중단하고 탑승객들을 격리 조치할 수 있습니다. 또한, 전염병의 확산을 막기 위해 해당 지역의 방역 조치를 강화할 수 있습니다.

2. 경제적인 효과: 항공기 폐수 감시를 통해 전염병을 조기에 검출하면, 경제적인 효과도 얻을 수 있습니다. 예를 들어, 전염병이 확산되면, 항공기 운항이 중단되고, 이로 인해 항공사와 여행사 등 관련 산업이 큰 피해를 입을 수 있습니다. 하지만, 항공기 폐수 감시를 통해 전염병을 조기에 검출하면, 이러한 피해를 최소화할 수 있습니다.

3. 다양한 병원균 검출: 항공기 폐수 감시를 통해 다양한 병원균을 검출할 수 있습니다. 예를 들어, 코로나19 바이러스뿐만 아니라, 메르스, 에볼라 등 다른 전염병 바이러스도 검출할 수 있습니다.

항공기 폐수 감시를 통해 전염병을 조기에 검출하는 것은 매우 중요한 과제입니다. 이를 위해서는 항공기 폐수를 수집하고 분석하는 기술이 필요하며, 이를 위한 인프라 구축이 필요합니다. 또한, 항공기 폐수 감시를 위한 국제적인 협력이 필요합니다. 항공기 폐수 감시를 통해 전염병을 조기에 검출하는 것은 인류의 건강과 안전을 보호하는 데 큰 도움이 될 것입니다. 이를 위해 우리는 항공기 폐수 감시에 대한 관심과 노력을 기울여야 합니다.


chatGPT

### 공항 폐수를 이용한 공중 보건 감시의 중요성

최근 연구에서는 공항 폐수를 이용한 공중 보건 감시의 중요성과 효과성에 대해 집중적으로 다루고 있습니다. 특히 COVID-19 팬데믹을 통해 감염병의 조기 탐지가 얼마나 중요한지 깨닫게 되었으며, 공항 폐수 감시는 이 목표를 달성하는 데 매우 유용한 도구로 평가받고 있습니다. 이번 블로그 글에서는 이 연구의 주요 내용을 요약하고, 공항 폐수 감시의 장점과 이를 통해 얻을 수 있는 다양한 혜택에 대해 살펴보겠습니다.

#### 공항 폐수 감시의 개념과 방법

공항 폐수 감시는 주로 대규모 항공 여행객이 모이는 국제공항에서 폐수를 수집하고 분석하여 병원체의 존재를 확인하는 방법입니다. 이는 다음과 같은 과정을 통해 이루어집니다:

- **폐수 수집**: 항공기에서 나오는 폐수를 모읍니다.

- **샘플링**: 수집된 폐수에서 샘플을 추출하여 분석할 준비를 합니다.

- **분석**: 샘플을 분자 진단 기법을 통해 분석하여 병원체의 유전물질(RNA, DNA)을 검출합니다.

#### 효과적인 감시를 위한 주요 요소

1. **확률 모델**: 병원체 검출 가능성을 높이기 위해 확률 모델을 개발하고, 항공 여행량, 바이러스 배출율, 배변 빈도 등을 고려하여 정확도를 높입니다.

2. **샘플링 비율**: 다양한 시나리오를 통해 입국 항공편의 샘플링 비율을 평가하여 효율적인 감시 체계를 구축합니다.

3. **공항 간 협력**: 주요 공항들이 협력하여 글로벌 네트워크를 형성하면 전염병의 조기 경고 시스템으로 활용될 수 있습니다.

4. **다양한 병원체 감시**: COVID-19 외에도 인플루엔자, 노로바이러스, A형 간염 등 다양한 병원체를 감시할 수 있습니다.

#### 연구의 의의와 활용 가능성

공항 폐수 감시는 조기 경고 시스템으로서 감염병 확산을 막을 수 있는 강력한 도구입니다. 비침습적이고 비용 효율적이며, 개인의 프라이버시를 보호하면서도 대규모 인구의 건강 상태를 모니터링할 수 있습니다. 또한, 글로벌 네트워크 구축을 통해 국제적인 전염병 대응에 중요한 데이터를 제공할 수 있습니다.

#### 다른 공중 보건 모니터링 방법

공항 폐수 감시 외에도 다양한 공중 보건 모니터링 방법들이 있습니다. 예를 들어, 공기 샘플링, 표면 샘플링, 폐기물 샘플링, 인체 샘플링, 동물 감시 등이 있습니다. 이러한 방법들을 함께 활용함으로써 공중 보건 모니터링의 정확성과 신뢰성을 더욱 높일 수 있습니다.

### 결론

공항 폐수를 이용한 감시는 전 세계적으로 건강 위협을 모니터링하고 전염병의 조기 탐지를 가능하게 하는 중요한 방법입니다. 이러한 감시 시스템을 통해 우리는 미래의 감염병 확산을 보다 효과적으로 대응할 수 있을 것입니다. 공항 폐수 감시는 그 자체로 강력한 도구일 뿐만 아니라, 다른 감시 방법들과 결합하여 공중 보건의 최전선에서 중요한 역할을 할 것입니다.

이 글을 통해 공항 폐수 감시의 중요성과 그 활용 가능성에 대해 더 깊이 이해할 수 있기를 바랍니다. 앞으로도 지속적인 연구와 협력을 통해 글로벌 보건 감시 체계가 더욱 강화되기를 기대합니다.


claude

제목: 공항 폐수 감시: 새로운 팬데믹의 조기 경보 시스템

최근 발표된 연구에서는 공항 폐수 감시가 새로운 감염병의 조기 발견에 큰 잠재력을 가지고 있음을 보여주었습니다. 이 연구는 COVID-19 초기 유행을 모델로 사용하여, 공항 폐수 검사를 통해 새로운 병원체를 얼마나 빨리 발견할 수 있는지 분석했습니다.

주요 연구 결과:

1. 단일 공항의 폐수 검사만으로는 새로운 병원체를 조기에 발견하기 어렵습니다.

2. 그러나 20개의 주요 국제공항이 협력하여 폐수를 검사한다면, 발견 확률이 크게 증가합니다.

3. 모든 입국 항공편의 폐수를 검사할 경우, 우한 봉쇄 이전에 SARS-CoV-2를 발견할 확률이 93%에 달했습니다.

이 방법의 장점:

- 비침습적이고 프라이버시를 보호합니다.

- 대규모 여행객을 효율적으로 모니터링할 수 있습니다.

- 비용 효율적입니다.

그러나 이 방법에는 한계도 있습니다. 검사 지연, 공항 간 검사 민감도 차이, 비행 중 배변 습관 변화 등을 고려해야 합니다.

이 연구는 공항 폐수 감시가 COVID-19뿐만 아니라 다른 감염병의 조기 발견에도 활용될 수 있음을 시사합니다. 노로바이러스, 로타바이러스, 장티푸스균 등 분변으로 배출되는 다양한 병원체에 적용할 수 있습니다.

결론적으로, 공항 폐수 감시는 기존의 공중 보건 모니터링 시스템을 보완하는 강력한 도구가 될 수 있습니다. 국제 협력을 통해 이러한 시스템을 구축한다면, 미래의 팬데믹에 더 효과적으로 대비하고 대응할 수 있을 것입니다.

#공중보건 #팬데믹예방 #폐수감시 #국제협력 #조기경보시스템


오늘은 4가지 모델 모두 만족할 만한 결과물을 보여주는 것 같습니다.

논문 내용이나 구조가 간결해서 그런것인지, gemini, clova-x, chatGPT, claude 모두 그럴듯하게 잘 작성한것처럼 보여서 따로 품평을 할 것은 따로 없어 보이고,

하수/폐수이외에도 이와 유사하게 조기 모니터링 또는 상시 모니터링을 할 수 있는 것들이 어떤게 있을지 물어보았는데, 대기 샘플링, 다중 이용 시설의 샘플링과 동물 감시 정도를 언급해 주었는데 어떻게 보면 이미 몇몇 연구팀에서 뉴욕이나, 서울시내 또는 교육시설을 대상으로 시료를 수집하여 분석을 진행하는 사례(microbiome)가 있었는데 이를 좀 더 체계적으로 진행 시킬 수 있는 기관이나 팀이 있으면 좋지 않을까 하는 생각이네요.




출처: @ye._.vely618