파이썬/파이썬 프로그래밍 새로비 2019. 9. 24. 23:22
이전 scrapy에 대한 소개와 아키텍처에 대한 글과 이어지는 내용입니다~ [Python/Python 프로그래밍] - 크롤링, 스크래핑할 때 이거 쓰세요. 최고의 파이썬 크롤링 솔루션 scrapy window에서 anaoncda를 통해 scrapy를 설치했을 때 계속 실행 오류가 뜨시면 일반 Python 공식 사이트에서 배포하는 Python 프로그램을 설치하여 Scrapy를 설치하세요! 저도 최근 anaconda를 설치해서 scrapy를 진행했었는데 계속 오류가 나서 Python으로 다시 진행했더니 잘 작동됩니다! | scrapy 설치 scrapy를 설치하기 위해서는 pip 패키지 매니져를 이용할 때는 다음과 같은 명령어를 입력하시면 됩니다. (이때, python이 설치된 디렉터리를 경로가 환경변수로 설..
더 읽기
파이썬/파이썬 프로그래밍 새로비 2019. 9. 23. 23:39
| selenium(셀레늄)이란 selenium은 주로 웹앱을 테스트하는 웹 프레임워크입니다. 또한 webdriver의 API를 통해 브라우저를 제어하기 때문에 자바스크립트에 의해 동적으로 생성되는 사이트의 데이터를 크롤링할 때 매우 유용하게 사용되는 스크래핑 도구입니다. | selenium 사용법 selenium은 크롬이나 파이어폭스같은 각 브라우져의 webdriver API를 통해 브라우져를 제어합니다. 따라서 자신이 쓰고자 하는 브라우져의 driver를 다운로드받아서 Java나 C#, Python 같은 프로그래밍 언어를 통해 제어하는 것이 일반적입니다. 여기서는 크롬을 기준으로 사용법을 설명할 예정입니다. driver를 다운로드 받을 수 있는 곳은 아래와 같습니다. 여기서 주의해야 할 점은 크롬 브..
파이썬/파이썬 프로그래밍 새로비 2019. 9. 20. 15:12
보통 보안 인프라가 갖추어져 있는 회사에는 회사 프록시를 통해 외부 인터넷에 접속할 수 있습니다. 하지만 이게 종종 문제가 되는 게 pip, npm 같은 패키지 매니져를 통해 해당 라이브러리가 제대로 다운로드 되지 않는 문제가 발생합니다...... 그 이유는 보통 그 사이트에서 보내온 인증서가 아닌 회사 인증서가 컴퓨터로 전송되기 때문에 그런데요. 저희 회사도 회사 프록시에 있는 인증서가 와서 제대로 pip, npm 같은 패키지 매니져가 제대로 작동하지 않았습니다ㅠㅠ 이럴 때는 1. 해당 패키지 매니져가 요청하는 호스트[ex) pypi.python.org]에 대한 인증서가 패키지 매니져에 등록되어 있거나2. 해당 URL을 무조건 신뢰하겠다는 옵션을 설정하거나3. strict-ssl 설정을 false로 하..
파이썬/파이썬 프로그래밍 새로비 2019. 9. 19. 22:40
안녕하세요. 개인적인 사정때문에 오랜만에 업로드하게 되네요. 최근에 부동산에 관심을 많이 가지게 되면서 부동산 공부 및 그와 관련된 데이터를 수집하는 일에 관심을 가지게 되었습니다. 데이터를 수집할 때 쉽게 이용할 수 있는 방법은 데이터의 바다인 웹에서 데이터를 가져오는 것인데요. 이 과정을 크롤링(crawling) 또는 스크래핑(scraping)이라고 합니다. 이번 포스팅에서는 제가 최근에 사용했던 크롤러 솔루션인 scrapy를 소개하고자 합니다. | 기존 크롤링할 때의 문제점 보통 크롤링을 할 때 수집할 데이터가 적은 경우에는 간단한 프로그래밍만으로도 원하는 데이터를 충분히 가져올 수 있습니다. 하지만 가져올 데이터양과 데이터를 소싱할 URL 수가 많아지면 크롤러의 소스 코드 수도 그만큼 복잡하고 길..
파이썬/파이썬 프로그래밍 새로비 2018. 11. 25. 20:49
| Call by assignment 파이썬은 함수 호출시 인자를 Call by assignment 방식으로 값을 불러옵니다. Call by assignment는 값에 의한 호출(Call by value), 참조에 의한 호출(Call by reference)과는 다르게 동작합니다. 이것을 이해하기 위한 키포인트는 함수 안에서 넘겨받은 값이 객체의 변경여부에 따라서 어떻게 다르게 동작하는 지를 아는 것입니다. 함수가 호출될 때는 모두 Call by reference로 불러들입니다. 하지만 mutable이냐 immutable이냐에 따라 함수 안에 객체의 값을 조작할 경우 다르게 동작하게 됩니다. mutable객체일 때는 참조에 의한 호출로서 계속 동작하게 되지만, immutable객체 일때는 값에 의한 호출..