Semalt : 파이썬으로 웹 스크랩 핑

Wi-Fi가 없을 때 끔찍한 순간을 겪어 보셨습니까? 그렇다면 컴퓨터에서 수행하는 작업의 양이 인터넷에 얼마나 의존하는지 깨달았습니다. 습관을들이 마시면 이메일을 확인하고 친구의 Instagram 사진을 보거나 트윗을 읽을 수 있습니다.

많은 컴퓨터 작업에 웹 프로세스가 포함되므로 프로그램이 온라인에 접속할 수 있으면 매우 편리합니다. 웹 스크래핑 의 경우입니다. 웹에서 콘텐츠를 다운로드하고 처리하는 프로그램을 사용합니다. 예를 들어 Google은 다양한 스크래핑 프로그램을 사용하여 검색 엔진의 웹 페이지를 색인합니다.

인터넷에서 데이터긁는 방법에는 여러 가지가 있습니다. 이러한 방법 중 많은 방법에는 Python 및 R과 같은 다양한 프로그래밍 언어의 명령이 필요합니다. 예를 들어 Python의 경우 요청, Beautiful soup, Webbrowser 및 Selenium과 같은 여러 모듈을 사용할 수 있습니다.

'요청'모듈을 사용하면 연결 문제, 네트워크 오류 및 데이터 압축과 같은 어려운 문제에 대해 걱정할 필요없이 웹에서 파일을 쉽게 다운로드 할 수 있습니다. 반드시 파이썬과 함께 제공되는 것은 아니므로 먼저 설치해야합니다.

이 모듈은 파이썬의 'urllib2'모듈이 복잡하여 사용하기 어렵 기 때문에 개발되었습니다. 실제로 설치하는 것은 매우 쉽습니다. 명령 행에서 pip install 요청을 실행하기 만하면됩니다. 그런 다음 간단한 테스트를 수행하여 모듈이 올바르게 설치되었는지 확인해야합니다. 이를 위해 대화식 쉘에 '>>> 가져 오기 요청'을 입력 할 수 있습니다. 오류 메시지가 표시되지 않으면 설치에 성공한 것입니다.

페이지를 다운로드하려면 'requests.get ()'기능을 시작해야합니다. 이 함수는 다운로드 할 URL 문자열을 가져온 다음 '응답'객체를 반환합니다. 여기에는 웹 서버가 요청에 대해 반환 한 응답이 포함됩니다. 요청이 성공하면 다운로드 한 웹 페이지가 응답 객체 텍스트 변수에 문자열로 저장됩니다.

응답 객체에는 일반적으로 다운로드 성공 여부를 확인하는 데 사용할 수있는 상태 코드 속성이 있습니다. 마찬가지로 응답 객체에서 'raise_for_status ()'메서드를 호출 할 수 있습니다. 파일 다운로드 오류가 발생하면 예외가 발생합니다. 다운로드가 잘못되면 프로그램이 중지되도록하는 좋은 방법입니다.

여기에서 표준 기능인 '열기 ()'및 '쓰기 ()'를 사용하여 다운로드 한 웹 파일을 하드 드라이브에 저장할 수 있습니다. 그러나 텍스트의 유니 코드 인코딩을 유지하려면 텍스트 데이터를 이진 데이터로 대체해야합니다.

데이터를 파일에 쓰려면 'iter_content ()'메소드와 함께 'for'루프를 사용할 수 있습니다. 이 메소드는 루프를 통해 각 반복마다 대량의 데이터를 리턴합니다. 각 벌크는 바이트 단위이며 각 벌크에 포함될 바이트 수를 지정해야합니다. 쓰기가 끝나면 'close ()'를 호출하여 파일을 닫으면 작업이 끝납니다.