기본 콘텐츠로 건너뛰기

블로그 이사와 웹스크래핑 공부 (1)

코딩, 맛만 봤던 사람으로서 참 험난한 길을 걷고 있다.

티스토리의 만행에 열폭하여 '블로그 이사'를 선언했는데, 그 실현의 길은 어렵기만 하다. 50여건의 글을 수동으로 스크래핑을 해 보았지만 남은 게시물은 여전히 800건 가까이 된다. 학부 때부터 작성해 온 게시물을 네이버 블로그에서 티스토리를 거쳐 쌓아 놓았으니 결코 적지 않은 양이다.

그 중에 '재활용'의 의미가 있는 것이 얼마나 될지는 모르겠지만 지울 건 지우고 옮겨오려 한다. 급한 마음에 문과출신스럽게 접근한다면 '계속' 수동으로 copy & paste(복사/붙이기)를 해야 할 것이다. 한 두 번 해보았다. 15건 정도를 처리하는 데 1시간 정도는 걸렸던 것 같다. 정신 차리고 빠릿빠릿하면 40분 정도가 될지도 모르지만.

수동의 길은 이렇다. 1) 티스토리 로그인, 2) 글관리 도구로 들어가서, 3) 해당 글을 띄운 뒤, 4) 글 수정 모드에서 글과 제목을 copy해서, 5) Word*에 붙여넣기하고, 6) 저장하되 7) 작성 시간과 제목으로 파일명을 부여해서 완료하고, 8) 해당 글을 과거 블로그에서 삭제하는 것으로 글의 백업을 할 수 있다.

.txt를 쓸 수도 있지만 .docx를 쓰려 한 것은 이미지도 함께 copy&paste가 되어 좋으며, 용량도 15kb-500kb 정도로 적기 때문이다. 수동 스크래핑 방법 중 가장 편리한 것은 브라우저에서 pdf로 인쇄하는 것이긴 하다. 그 경우 용량은 2mb 내외가 된다.

새로운 블로그에 글을 재게재하는 것은 또 다른 일이 된다. word 파일에서 긁어다가 붙이는 건 text만 가능하고 이미지는 별도로 업로드 해야 하니. 이런 걸 프로그래밍해서 백업 파일을 만들고, 그 백업 파일을 자동으로 업로드할 수 있다면 좋을 것이다.

그러나 지금으로서는 백업은 자동으로 하고, 업로드는 선별과 수정 작업을 거쳐야 할 것 같다. 쓸만한 옛날 글을 재활용 한다고 할 때 어색한 문장이나 바뀐 생각을 반영해서 고칠 필요가 있다. 그리고 무엇보다 그대로 옮기면 '저품질 문제'가 생긴다. 그러나...


블로그 저품질 이슈

블로그 이사에서 가장 큰 걸림돌 중의 하나가 '검색 포털'이라는 사우론의 눈이 '저품질 블로그'로 낙인 찍는 일이다. 동일한 게시물이 복제된다고 본다면 이런 검색 배제는 훌륭한 시스템이다. copy를 일삼아 창작자의 수고를 탈취하는 일을 막을 수 있기 때문이다. 

그러나 해당 작자가 자기 창작물을 다른 업체로 옮겨 게시하는 경우에도 색인 로봇의 '저품질' 평가에 노출될 수 있는 것이다.

지금 나도 그런 문제를 겪고 있다. 현재 어느 포털에서도 내 블로그 글은 검색되지 않는다. 따라서 트위터나 페이스북에 게재된 링크를 타고 들어오거나 내 블로그를 즐겨찾기 해 놓아 직접 링크를 타고 들어오는 경우로만 접근이 가능하다. 10여 년 이상 사용해 온 'steinsfactory'라는 간판을 고수하다가 생긴 문제인 듯하다.

어느 포털에서든지 'steinsfactory'를 검색하면 티스토리 블로그가 검색된다. 물론 거기에 이 블로그로 올 수 있는 링크를 걸어 놓긴 했지만. 서브 간판인 '인간학공작소'의 경우는 네이버와 구글은 티스토리 블로그를 보여주고 다음은 그마저도 보여주지 않는다.

지금 이 블로그는 2015년엔가 티스토리의 검열을 처음 겪었을 때 만든 것이긴 하다. 'steinfactory'라는 이름으로 만들어 놓았던 것이다. 그때부터 비슷한 이름이 문제가 되지 않았을까 싶다.

과거 게시물을 그대로 재활용하는 것이 저품질 이슈를 발생시킨다고 해서 시간을 두고 옮기려 했지만(사실 기술적 문제로 바로 옮길 수 없는 것이지만), 그렇게 몸을 사린 것과는 별개로 이미 저품질 문제에 빠져 있었던 것이다.

구글이나 네이버 등의 검색 문제 해결을 위해서 이용자가 할 수 있는 범위의 조치(구글 search console이나 네이버 서치어드바이저 활용)는 해 놓았지만 아직 별 변화는 없다. 10월 말까지 별달리 개선이 되지 않는다면 다시 짊을 싸야 할지도 모르겠다.


웹 스크래핑 공부를 시작하다

위기를 기회로 만들기 위한 방편으로 생각한 것이 '코딩 공부'다. 연구자로서 코딩 실력이 필요한 상황이어서 해야지 해야지 생각은 많이 했지만 실제 써먹을 수 있을 만큼 공부해 본 적은 없었다. 부트캠프나 학교에서 제공된 강의를 듣는 정도였다.

R이나 Python을 그런 기회에 컴퓨터에 깔아 놓고 있었지만, 실제 연구에 활용하지는 못했다. 지난 번 논문(19-20세기초 종교 용례 연구) 작업할 때, 그 필요성을 절실히 느끼긴 했다. 1,500여 건의 신문 자료를 검토할 때 정신이 나갈 뻔 했다. 대한민국신문 아카이브에서 '검색 결과 엑셀 내보내기' 기능을 제공해서 그나마 몸으로 때우려는 마음이라도 먹었던 것이다.

블로그 이사를 위해 스크래핑 실력이 현재 절실하니 이 기회로 웹 자료를 자동으로 수집하는 코딩 기술을 습득해보자는 원대한 포부를 세웠다. 그러나 기초가 부족하니 교육 영상이나 기작성 코드들을 이용해서 이것저것 시도해 보는 정도에 그치고 있다.

구글링해서 얻은 스크립트를 기반으로 과거 블로그에서 페이지를 스크래핑 해 보는 시도를 진행 중이다. 필요한 라이브러리가 뭔지도, 어떤 코드가 왜 필요한지도 아직 잘 모르지만, 코드를 돌려보고 결과를 확인해 보면서 수정해 가고 있다.

어제 오늘 혼자 해 본 것은 "yyyy. mm. dd. hh:mm"와 같은 시간 표시를 긁어 와서 "yyyy-mm-dd" 형태로 바꾸어 주는 코드를 짠 것 정도다. 훨씬 간단한 방법이 있겠지만, 최근에 배운 걸 총동원해서 해본 것이다. 마지막 줄에서 text로 바뀐 시간 정보에서 '.(period)'+ 'blank'를 '-(hyphen)'으로 2개까지만 바꿔 주되 뒤에서 7열은 제외하는 식으로 처리했다.

앞으로 떠듬떠듬 해야 할 일은

1. 비공개 상태에서 게시물을 스크래핑하기 위해 로그인 정보를 주고 처리하는 코드 짜기(없으면 게시글 공개 상태에서 스크래핑하기로 목표를 수정할 계획)

2. 작성된 글의 html 코드를 살려서 스크래핑하기

3. 스크랩 시에 불필요한 정보 최소화하기

4. 이미지 등도 살려서 스크래핑하기

5. 누락된 url에서 오류 나지 않게 하기

6. .docx 혹은 .txt로 스크랩된 데이터 저장하기

7. 백업 폴더에 작성글 찾기 쉽게 '날짜+제목'으로 파일 및 폴더 정리하기

이런 목표를 11월까지 처리할 수 있기를 기대하고 있다. 

지금 현재는 공개된 게시물의 날짜와 제목 그리고 본문을 html 코드를 살려서 가져오는 정도다(여기에서 코드 제거하고 text만 추출하는 건 간단하다. get_text() 함수로..). 일부 불필요한 정보를 포함하고 있어서 그마저도 만족스러운 결과물은 아니다.

.   .   .

블로그 이사와 저품질 문제를 극복할 수 있을지 모르겠다.

티스토리의 검열로 촉발된 충동적 블로그 이사가 코딩 실력 향상의 결과로 귀결된다면 뭐 충분히 남는 장사가 되긴 할 것 같다.

역시 공부는 분노의 힘이 최고다.

이걸 요즘 새삼 느끼게 된다. 지루하고 지난한 과정을 감내하며 코드 한 줄 한 줄을 실험하며... 종교 개념사에 대한 후속 연구나 '인터넷 종교성'에 대한 본격적인 연구를 수행할 수 있게 되기를 꿈꾸고 있다.

댓글

이 블로그의 인기 게시물

제임스 카메론 감독과 예수 가족의 무덤, '예수 신화'에 이야기를 더하다

 얼룩소에 2023년 8월 2일에 쓴 글입니다. *  *  * 최근에 『예수의 무덤: 역사를 뒤집을 고고학 최대의 발견』(2007)이란 책을 보게 되었습니다. 『예수의 무덤』의 표지(출처: 교보문고) 원제는 The Jesus Family Tomb: The Discovery, the Investigation, and the Evidence That Could Change History (예수 가족의 무덤: 역사를 바꿀 수 있는 발견, 조사, 그리고 증거, 2007)입니다. 이 책을 보고 '제임스 카메론'이 등장할 것을 알기는 어렵지요. 관련 논란을 미리 알았더라면, 그리 놀라지는 않았을 것 같습니다. 책을 펼치면 '추천의 글'이 있습니다. 이 글을 쓴 사람이 제임스 카메론(캐머런)이었습니다. 『예수의 무덤』 17쪽, '추천의 글' 글쓴이 그런데 이 책의 문제 의식은 상당히 인상적입니다. 역사학자, 성서학자의 '예수의 실존'에 관한 일반론에 대한 반박을 할 수 있는 결정적인 물리적 증거(예수 가족의 무덤)가 심차 자코보비치(Simcha Jacobovici)와 찰스 펠리그리노(Charles R. Pellegrino)에 의해서 발견되었다는 것입니다.  요즘 많은 전문가들이 예수가 실제로 존재하지 않았다고 주장하고는 한다. 이교도들의 신, 죽음과 부활의 신화, 1세기경 유대인들의 메시아 전통 등이 결합되어 조작된 존재로, 예수 역시 그리스 신화의 제우스처럼 역사적 실존 인물이 아니라는 주장이다. ... 그리고 대부분의 학자가 크리스마스도 동지를 축하하는 이교도의 전통을 받아들인 것으로 해석한다. 동정녀 잉태와 부활 등 예수의 이야기에서 기본적인 틀을 이루는 많은 부분이 예수의 존재보다 적게는 수백 년을 앞서고 있기 때문에, 예수가 실존 인물이 아니라 어떤 특별한 이유로 조작된 신화적 인물이라는 주장이 설득력 있게 들린다. 예수 그리스도가 실제로 이 땅에서 살았다는 물리적 증거가 하나도 없기 때문에 ...

태백산, 산당, 서낭당 그리고 사람들┃답사 후기

[2017년 6월에 태백산 일대의 답사를 다녀와서 쓴 글입니다. 답사는 6월 3일부터 6월 4일까지. 후기 작성일 2017. 6. 7.] · · · 태백산에 다녀왔다. 천제단, https://www.khan.co.kr/local/Gangwon/article/202204281434001#c2b 난 답사를 싫어한다. 주위 사람들은 다 알고 있다. '왜 가야 하나'에 적절한 답을 가져본 적이 없다. 학부 때는 '학술'을 가장한 MT같은 것이니 어쩔 수 없다 싶었는데, 대학원에 들어와서는 그마저도 관심이 시들해졌다. '학'은 사라지고 '술'을 위해서 가는 것이라면 또 굳이 갈 이유가 있을까 싶기도 했다. (실제 답사가 다 그런 것은 아니다. 내가 답사에서 무언가 발견할 수 없었기 때문에 그렇게 느꼈던 것 같다) 그런데 박사수료 후부터 조금 달라졌다. 이제 '그곳'에 가면 이야기가 보이기 시작한다. 그것도 재미가 있다. 왜 그런가 싶었는데, 역시 수준 높은 연구자들과 함께 가서 그런 것 같다. 혼자 갔다면 도저히 그곳의 이야기, 그곳 사람들의 이야기를 듣지 못했을 터다. ('자기 문제의식'이 명료화 되었다는 점도 중요한 것 같기는 하다) '산악신앙'은 상식적으로는 '원시신앙'으로 학술적으로는 자연신앙 내지는 마을신앙과 관련된 민속신앙으로 이야기된다. 고도의 신학적 이야기, 그래서 인생의 의미를 음미하는 따위의 것이 담겨있지 않다. 그래서 상당히 빈곤하게 이해된다. 그런데 이번에 태백산 답사를 가서, 거기에 '인간'을 들여다 보는 '어떤 창'이 있다는 것을 새삼스럽게 확인하게 되었다. 산은 '신성한 곳'이다 태백산 같이 높은 산, 주변 지역의 '중심'이 되는 산은 특히 그렇다. 그런 산들은 일단 직접적으로 인간에게 '위험'하다. 맹수로부터 목숨을 위협 받을 수 있는 곳이다. 높...

우리 뇌의 '미래 보상 감지기'로서의 세로토닌?!

최근 오타와 대학교 연구팀이 세로토닌 뉴런이 우리 뇌에서 어떤 역할을 하는지에 관한 흥미로운 연구 결과를 발표했다. 이 연구는 우리가 일상에서 수많은 결정을 내릴 때 세로토닌이 어떻게 작용하는지에 대한 새로운 시각을 제시한다. 세로토닌의 새로운 역할: 미래 가치 예측자 세로토닌(serotonin)은 흔히 '행복 호르몬' 또는 '기분 좋게 만드는 화학물질'로 알려져 있다. 많은 항우울제가 이 세로토닌 시스템을 대상으로 하는 이유도 여기에 있다. 그러나 세로토닌의 정확한 역할은 그동안 과학자들에게 수수께끼였다. 이번 연구에서 밝혀진 중요한 발견은 세로토닌 뉴런이 단순히 즐거움이나 고통에 반응하는 것이 아니라, '예상 가치(prospective value)'라는 신호를 보낸다는 것이다. 이는 가까운 미래가 얼마나 좋을지를 뇌에 알려주는 일종의 예측 신호이다. 강화 학습 이론과 뇌 연구의 만남 연구팀은 '강화 학습 이론(reinforcement learning theory)'과 뇌의 세로토닌이 풍부한 지역인 '등쪽 솔기핵(dorsal raphe nucleus)'에서 얻은 신경 기록을 결합했다. 강화 학습 이론은 인공지능 분야에서도 사용되는 개념으로, 행동의 결과를 바탕으로 학습하는 방식을 설명한다. 쉽게 말해, 좋은 결과를 가져온 행동은 반복하고, 나쁜 결과를 가져온 행동은 피하게 되는 학습 방식이다. 등쪽 솔기핵은 뇌간의 한 부분으로, 세로토닌을 생산하는 뉴런이 많이 모여 있는 곳이다. 이 지역은 우리의 기분, 수면, 식욕 등 다양한 기능에 관여하고 있다. 의외의 보상에 더 강하게 반응하는 세로토닌 뉴런 연구에 따르면, 세로토닌 뉴런은 특히 '예상치 못한 보상(unexpected rewards)'에 가장 강하게 반응한다. 예를 들어, 갑자기 길에서 돈을 발견했을 때 우리 뇌의 세로토닌 뉴런은 평소보다 더 활발하게 활동한다. 이는 세로토닌이 단순히 현재의 즐거움이나...