Python27 [Python] Selenuim 스크롤 조작하기 Python 으로 크롤링을 진행할 때, 간혹 스크롤의 존재로 인해 원하는 정보 모두를 크롤링 하기 어려울 떄가 있다. 예를 들면, 페이지 첫 화면에서 모든 정보를 랜더링 하지 않고, 스크롤을 아래로 내림으로써 추가적으로 컨텐츠를 불러오는 페이지가 있다. 이 때 전체 페이지 요소를 확인하기 위해서는 스크롤이 더 이상 내려가지 않을 때 까지 내리는 작업이 필요하다. from selenium import webdriver browser = webdriver.Chrome() browser.get(url) # 크롤링 하기 위한 url 입력 # 현재 스크롤 위치를 저장 last_height = browser.execute_script("return Math.max( document.body.scrollHeight,.. 2024. 2. 1. [FastAPI] AWS DB - MySQL 연결하기 https://fastapi.tiangolo.com/tutorial/sql-databases/#create-the-relationships SQL (Relational) Databases - FastAPI FastAPI framework, high performance, easy to learn, fast to code, ready for production fastapi.tiangolo.com 처음에는 하나의 DB (MongoDB)를 사용하여 작업을 하고자 구상했지만 연결된 데이터 관리와 관계형 데이터베이스 사용 경험을 위해 AWS에서 DB를 하나 생성했다. 가장 먼저, SQL 사용을 위한 패키지를 설치한다. python3 -m pip install sqlalchemy 초기 설정은 가이드 문서 그대로 .. 2023. 12. 20. [FastAPI] Project Levup - .env (dotenv) 적용하기 프로젝트 버전을 저장 및 다른 기기에서 이어서 작업을 할 수 있도록 github에서 작업을 진행하는데 DB 연결 정보가 있다보니 commit 을 하기 전 비밀번호를 실제와 다른 것으로 저장한 후에 진행했다. 지금은 가려야 하는 것은 DB 정보 밖에 해당하지 않아서 번거롭기는 하지만 잊어버리지 않을 정도는 되지만 민감 정보가 많아지고, DB 연결이 더 많아지는 경우에 하나 하나 관리하기 어려워 진다는 문제가 있다. 이를 위해서 민감 정보를 모아두는 파일을 따로 만들고 그곳에 민감 정보를 저장, gitignore 파일에 포함시켜 commit에서 제외시킨다. 먼저, .env 파일을 불러올 수 있도록 패키지를 설치한다 python3 -m pip install python-dotenv 그 후 프로젝트 폴더 내 ... 2023. 11. 30. [FastAPI] Project Levup - 메모 수정 & 삭제 기능 만들기 https://chunws13.tistory.com/52 [React] Project Levup - Axios 활용하기 백엔드에서 구현한 사항 : 메모 만들기, 메모 조회하기 백엔드에서는 로그인이 완료되면 토큰을 발급하고, 토큰과 함께 메모 조회 요청을 하면 해당 ID로 작성한 메모를 가져오도록 구현했다. 먼 chunws13.tistory.com 프론트엔드에서 메모 읽기와 쓰기 기능을 받아서 구현을 완료했으므로, 메모 수정 기능을 가진 api를 설계해 본다. 클라이언트에서 메모 id와 내용을 전달해 주면 memo db에서 id를 조회하여 저장된 내용을 바꾸면 될 것이다. 구현을 위해 클라이언트 측으로부터 받아야 하는 정보는 [ 메모 id, 수정할 내용, 로그인 토큰] 으로 총 3가지이다. 수정할 내용은 .. 2023. 11. 29. [프로그래머스] PCCP 기출문제 2번 https://school.programmers.co.kr/learn/courses/30/lessons/250136 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 가장 많은 기름을 뽑을 수 있는 양을 찾는 문제. 1. 접근 처음 이 문제를 봤을 때, 지점을 순회하면서 BFS나 DFS를 활용해서 얻을 수 있는 기름의 총량의 최대치를 반환해 지속적으로 answer 값을 갱신하고자 했다. 2. 초기 코드 import copy def checker(land, start, depth, width): value = 0 move = [[0, 1], [1, 0], [0.. 2023. 11. 28. [프로그래머스] 혼자서 하는 틱택토 https://school.programmers.co.kr/learn/courses/30/lessons/160585# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 주어진 틱택토 게임 정보가 정상적으로 진행 중이거나 완료되었는지 확인하는 문제. 1. 접근 방법 - 1 아직 시작하지 않았거나, 진행중인 게임 정보가 존재하는 경우가 있으니 선공과 후공 중 누가 이겼는지 판단하기 보다 해당 판의 정보가 올바른지 확인해야 한다. 판을 순회하며 선공 표식과 후공 표식의 개수를 먼저 세본 후 일반적인 경우 1. 후공의 표식이 선공보다 많을 수 없고 2. 선공과 후공.. 2023. 11. 22. 이전 1 2 3 4 5 다음