본문 바로가기

반응형

Programming

(101)
Python 인스타그램 크롤링-크롤링관련 소스(1) 안녕하세요. 인스타그램 크롤링 프로젝트 중 크롤링과 관련된 소스에 대한 설명입니다. 전체 구조 중 CraCrawlingInstagramMng.py에 대해 설명하겠습니다. 인스타그램 크롤링 클래스는 크롤링 과정에 필요한 기능을 제공합니다. 이에 필요한 로그인, 검색, 게시글 정보, 이미지 정보, 인스타그램 URL 게시글 정보 수집과 같은 메소드를 구현하였습니다. 전체적인 로직은 하단 이미지와 같습니다. 로그인 로그인은 필수 조건은 아닙니다. 하지만 게시자가 팔로워에게만 공개되는 게시글의 정보를 크롤링하기 위해서는 로그인이 필요합니다. 그리고 웹페이지 로드를 위해 로그인하기 버튼 , 로그인 버튼 클릭 후 3초간의 대기 시간을 가집니다. def LoginInstagram(self, strId, strPassw..
Python 인스타그램 크롤링 프로젝트 구조 안녕하세요. 구현한 인스타그램 크롤링 프로젝트의 구조를 간략하게 설명하려고 합니다. 총 3개의 스텝으로 나누어진 자동화 소스코드이니 참고하시기 바랍니다. 프로젝트 Git 주소 : github.com/kjky12/AnalyFamouHashtag kjky12/AnalyFamouHashtag Contribute to kjky12/AnalyFamouHashtag development by creating an account on GitHub. github.com 프로젝트의 구조는 다음과 같으며 루트 경로에 있는 4개의 소스코드가 메인 소스 코드(ContentKewordFromInstaUrlToDB.py, ContentUsrIdFromInstagUrlToDB.py, InsertKewordInstaUrlDataTo..
Python 크롤링 라이브러리 설명 크롤링시 설치하는 패키지에 대한 간략한 설명만 작성하겠습니다.(워낙 많으 포스팅이 있기때문에 무엇인지만 작성하겠습니다.) BeautifulSoup4 BeautifulSoup은 HTML 코드를 Python으로 사용하기 쉽도록 Parsing을 해주는 역할을 한다. BeautifulSoup의 사용이 편한 이유를 간단하게 표시해보자면 아래와 같다. Temp = soup.select_one('content > div.section') HTML의 div.section 다음에 있는 content 를 찾아서 HTML을 파싱하여 넘겨준다. requests Python에는 requests라는 라이브러리가 있다. 쉽게 생각한다면 HTML정보를 얻어오는 라이브러리이다. (※requests로 데이터를 얻어오고 Beautiful..
Python 인스타그램 크롤링 환경 셋팅 안녕하세요. 파이썬을 이용해 인스타그램에서 이미지, 게시글, 좋아요와 같은 정보를 크롤링하는 자동화 프로그램을 개발했습니다. 개발한 지는 조금 지났지만 이제서야 포스팅을 올리네요. 개발환경은 다음과 같습니다. 언어 : Python 3.7 (64bit) 개발 도구 : Visual Studio 2019 라이브러리 : BeautifulSoup4, requests, lxml, selenium 저는 가상환경, 라이브러리 설치가 편해서 Visual Studio를 사용하여 개발하였습니다. (이제는 개인 적으로 가장 익숙하고 편한 환경을 사용하게 되네요.) Visual studio 파이썬 프로젝트 환경 구축을 해보겠습니다. 현재 구축 할 프로젝트를 위한 가상환경을 생성해줍니다. 가상환경은 추후 기능에 따라 식별할 수 ..
CUDA Host<->Device cudaHostGetDevicePointer 대용량 데이터를 처리하다보니 GPU 메모리 제약으로 처리할 수 없어서 고민하던 중 Host메모리를 Device에서 사용 할 수 있는 방법을 찾았습니다. [cudaHostAlloc, cudaHostGetDevicePointer] 개발 환경은 Visual Studio 2013, CUDA ToolK 11.0, GPU 1050, Compute capability 6.1버전에서 테스트를 완료했습니다. 파일 2.5GByte를 Host Memory에 할당하고 CUDA Kernel에서 처리하였습니다. 알고가면 좋은 내용을 간단히 정리하겠습니다. 1. Host에 할당한 메모리는 Read/Write가 모두 가능 2. Host Memory를 할당 시 공유 GPU 메모리 사용량 증가(Host 메모리의 절반 사용가능) 3. D..
프로그래머스 - 124 나라의 숫자 이번에 풀어본 문제는 124나라의 숫자(12899번)문제를 풀어보았다. 풀어본 모든 문제를 포스팅 하는 것은 아니지만.... 어렵지 않은 문제인데 너무 헤맸다....(3시간이나 걸렸다...) 물론 나 홀로 혼돈의 미로 속으로 빠졌기 때문이다... 코딩테스트 연습 > 연습문제 > 124 나라의 숫자 programmers.co.kr/learn/courses/30/lessons/12899 문제 : 124 나라가 있습니다. 124 나라에서는 10진법이 아닌 다음과 같은 자신들만의 규칙으로 수를 표현합니다. 124 나라에는 모든 수를 표현할 때 1, 2, 4만 사용합니다. 문제를 보고 2가지를 떠올려서 코딩을 하였다.(누구나 쉽게하는 생각..) 1. 10진법을 3진법 전환 2. 진법 변환 시 나누기, 나머지로 1..
알고리즘 종류 Greedy(탐욕, 그리디 알고리즘) : 현재 상태의 최적을 선택해서 결과를 추출한다. > Sorting, DP의 느린 속도를 보완하기 위함 # 부분적인 최적해 DP(Dynamic Programming, 동적 계획법) : 모든 상황의 최적을 찾아내서 결과를 추출한다. > 점화식, 메모이제이션, 재귀 or 반복문 설계 # 최단거리 길 찾기, 노드의 최대 값 찾기
프로그래머스 - 정수 삼각형 내가 풀어본 문제(못 풀고 다른분들의 풀이를 보고 개념을 이해해서 다음 문제를 기약하기로했따.)는 프로그래머스의 43105번 문제이다. 코딩테스트 연습 > 동적계획법(Dynamic Programming) > 정수 삼각형 url : programmers.co.kr/learn/courses/30/lessons/43105 int solution(vector triangle) { int answer = 0; //! 아래 노드의 2개의 값과 더해줘야 하기 때문에 하단 결과 입력 메모리를 2배로 만들어줌 vector dp(triangle.size()); for (size_t i = 0; i < triangle.size(); i++) { //! 처음꺼도 계산해야하므로 처음껀 1개만 입력! if(i == 0) dp[i..

반응형