수집 방법
DB에 있는 논문(이하 우리 논문)이 인용된 논문을 찾는다.
우리 논문을 인용한 부분이 어딘지 찾는다.
그 부분(이하 쿼리 문장)을 가져온다.
사용 방법
1. 쿼리 문장에서 키워드를 추출한다.
2. 추출한 키워드 유사어 5개를 찾는다.
3. 유사어 5개와 키워드를 포함한 데이터 DB에서 찾는다.
4. 임베딩 유사도 계산을 통해 상위 5개만 가져온다.
5. 정답이 있으면 성공!
수동
1. arXive에 article_id를 검색한다.
2. 최상단에 뜨는 논문 클릭한다.
3. citation 항목을 본다.
자동
4. 우리 논문을 cite한 부분을 찾는다.
5. DB에 추가한다.
아쉽게도 ref, cits는 크롤링을 허락하지 않기 때문에 수동으로😂ㅋㅋㅋㅋㅋㅋㅋㅋ가져올 수 밖에 없다.arxive의 크롤링 정책은 여기서 확인할 수 있다.
일단은 제대로 pdf에서 인용구문을 찾는지, 인용구문을 쿼리에 넣어 검색하는 과정은 문제 없는지 확인해볼 생각이다. 벌써 내 손으로 100개의 쿼리소스를 모았다.👏 (라벨은 두 개 뿐이지만..)

이처럼 두 개의 타겟 논문을 폴더로 만들고 그 안에는 인용 논문의 pdf 파일이 들어있다.
pdf에서는 다음의 과정을 통해 원하는 정보를 긁어올 수 있다.
pdf에서 텍스트를 가져오는 파이썬 라이브러리가 있다. pypdf이다. aspose라는 것도 있다.
저자, 저널, 발표일자 등 추가적인 정보를 크롤링할 수 있는 방법도 찾았다.
현재 2개의 타겟논문에 대해 인용구절을 찾는 작업을 반자동화했다. 프로세스는 다음과 같다.
1. pdf의 text 추출
2. text내에서 타겟논문 검색(인용형식에 따라 제 1저자명을 기준으로 검색),(line 단위로 검색, 해당 단어가 포함된 줄 전체를 출력하도록)
3. 위에서 찾은 인용번호([]안에 들어가있는 번호)로 재검색
4. 3에서 나온 문장(문단이 좀 더 정확함)을 추출하여 df로 저장
pdf에서 text를 성공적으로 추출했다. 수식은 @math형식으로 출력이되고 보통 수식에서의 스페이스바 하나가 엔터키 하나로 인식되는 현상이 있음.
text내에서 타겟 논문을 성공적으로 찾은 횟수는 2회/27(총)이다. 수동으로 찾아보니 2/3에서 타겟 논문이 인용된 부분을 찾을 수 있었다.(좀 더 찾아봐야겠다..ㅎ)

2에서 찾은 2회 마저도 인용번호로 재검색은 모두 실패했다.
..