Vscode 모듈 설치 - Vscode modyul seolchi

npm 사용은 처음이라서 간단한 부분이여도 많이 힘들었다.. 조금 많이 하기 싫었는데 그래도 재밌게 코딩하는 상상하면서 설치했다.  

## npm?

글을 쓰다보니 npm 이 뭔지 모른다는 것이 생각났다. 

>> npm 이란 Node Package Modules 의 약자로 Node.js 에서 사용가능한 모듈들을  패키지화시켜 모아놓은 것.  

이라고 한다. 그래서 npm 을 통해 일일이 개발하지 않아도 누군가 올려놓은 모듈을 다운로드 받아서 모듈에 대한 기능을 사용할 수 있는 것이다.  

npm 설치는 알아서 하자. 이 글은 Underscore 모듈을 설치하는데 의의를 둔 글이니까..★

Vscode 모듈 설치 - Vscode modyul seolchi

[사진 1: visual code]

[사진 1]은 visual code 창이다. 터미널을 띄우는 방법은 Ctrl + ~을 누르면 터미널 창이 나온다. 우선 우리는 cmd 가 아니라  Power-Shell 을 사용할 것이다. 

이 또한 친절하게 알려주겠다. Ctrl + Shift + P 를 누르며 다음 사진 같이 뜰 것이다.

[사진 2: Ctrl + Shift + P]

창에 Terminal Select 라고만 쳐도 자동완성으로 >Terminal: Select Default Shell 이 나올 것이다. 거기서 Power Shell 을 선택해주자.

그리고 [사진 1] 에 터미널 창 오른쪽 상단에 + 버튼을 클릭하면 Power Shell 로 터미널 창이 설정될 것이다.

그리고 npm 을 입력하면 [사진 3] 과 같이 출력되야 정상이다.

[사진 3: npm 입력 시]

그러면 npm init 을 입력해보자.

[사진 4: npm init 입력 시]

npm init 시에 저런 식으로 출력되고 package name 을 입력하라고 한다. [사진 4] 에서 (underscore-test) 는 기존의 package name 이다. 즉, 여기서 입력한 값으로 application name으로 정한다. 하고 싶은 걸로 하자.

npm init 이란 npm 에서 사용하는 package.json 을 생성시켜주는데, 이 json 으로 프로젝트 관리를 해준다.  그래서 package.json 으로 의존성 라이브러리에 대한 정보를 관리해준다. 

한마디로, package.json 으로 라이브러리를 관리한다라고 생각해도 될 것 같다.

[사진 5: package.json 정보 입력]

[사진 5] 처럼 package name 을 입력하면 저런 version 입력하라, description 입력하라 하는데 난 뭐 딱히 쓸 생각이 없어서 엔터만 쳤다. 그러면 Is this ok? (yes) 이런 식으로 물어보는데 그냥 엔터치면 package.json 이 해당 경로에 생성될 것이다. 

[사진 6: 생성된 package.json]

[사진 6] 은 생성된 package.json 이다. 여기서 우리는 dependencies 를 이용해 설치할 모듈을 입력하면 된다.

[사진 7: dependecies 입력]

그냥 [사진 6] 에서 "depenedcies" 부분만 추가해줘도 된다. 우선 난 직접 1.8.0 버전을 설치할 수 있도록 해줬는데 또 다른 옵션을 부여할 수 있다. 그 부분은 직접 알아보길..

이제 다시 visual studio code 로 넘어가자.

그 뒤 npm install 을 입력해주면 해당 package.json 을 통해 모듈을 설치한다.

아나콘다를 설치하고 나서 Visual Studio Code 나 Pycharm 등의 에디터에서 모듈을 설치하려고 하면 이미 설치되어 있다는 메시지가 나오지만, 실행이 되지는 않는 경우 해결법 입니다.

모듈이 이미 깔려있다는 문제점

웹스크래핑시 빠른 구문처리를 위해 다음과 같은 코드를 이용하여 lxml를 사용합니다.

soup = BeautifulSoup(res.text, "lxml")

이 경우 다음과 같은 에러 메시지가 나오는 경우가 있는데요

 bs4.FeatureNotFound: Couldn't find a tree builder with the features you requested: lxml. Do you need to install a parser library?

보통 이 경우에는 커멘드 라인에서 lxml 모듈을 설치해 주면 해결이 됩니다.

pip install lxml

그러나 pip install을 이용하여 모듈을 설치하는데 이미 설치가 되어 있다고 나오면서 인스톨은 되지 않을때가 있습니다.

PS D:\data\pythonworkspace> pip install lxml
Requirement already satisfied: lxml in c:\users\w\anaconda3\lib\site-packages (4.6.3)

여전히 터미널에서 파이썬 코드를 실행하면 모듈을 설치하라고 하는 경우가 있습니다.

문제 원인

저와 같은 파이썬 초보자 분들은 이러한 인터프리터 언어와 시스템 구조를 잘 이해하지 못하여 발생하는 문제 인데요. 아나콘다를 설치할때 해당 버전에 맞는 파이썬이 같이 설치가 되고 이후 별도로 파이썬의 최신 버전을 설치 후 Visual Studio Code 에디터에서 사용하는 버전이 달라서 발생하는 문제로 보입니다.

해결방법

이 경우 Visual Studio Code에서 Anaconda를 설치할때 같이 설치된 파이썬의 interpreter를 선택하여 사용하면 해결이 되었습니다.

하기와 같이 Visual Studio Code에서 Anaconda를 연동?하여 사용하시면 됩니다.

Vscode 모듈 설치 - Vscode modyul seolchi

먼서 사각형 모양의 Extension 설치를 눌러서 Code Runner 를 설치해 준 후 VS Code를 종료하고 다시 실행 합니다.

Vscode 모듈 설치 - Vscode modyul seolchi

Interpreter를 선택하기 위해서 Ctrl + Shift + P를 눌러서 Python: Select Interpreter를 선택해 주세요

Vscode 모듈 설치 - Vscode modyul seolchi

리스트에서 conda라고 나와 있는 것중 자신의 PC에 맞는 것을 선택하시면 됩니다.