Selenium은 웹 애플리케이션을 자동화하는 데 사용되는 프레임워크로, 웹 브라우저를 제어하고 웹 페이지를 조작하여 웹 크롤링, 웹 테스팅 등 다양한 작업을 자동으로 수행할 수 있다. 이제 Selenium에서 가장 많이 사용되는 함수들을 하나씩 알아보자. get(): 웹 페이지로 이동하기 get() 함수는 지정된 URL로 웹 브라우저를 이동하는 역할을 한다. 웹 페이지를 방문하고 해당 페이지의 정보를 가져오려면 먼저 해당 페이지로 이동해야 한다.from selenium import webdriver driver = webdriver.Chrome() driver.get('https://www.example.com') 2. find_element_by_XXX(): 웹 요소 찾기 - `find..
Python
BeautifulSoup는 HTML과 XML 문서를 파싱하기 위한 라이브러리로, 웹 페이지의 복잡한 구조를 쉽게 분석해서 원하는 정보를 찾아낼 수 있다. 이번 포스팅에서는 간단히 BeautifulSoup의 사용법에 대해 알아보자 Beautifulsoup 사용법 먼저 BeautifulSoup를 설치해야 한다. pip install beautifulsoup4 이제 BeautifulSoup 객체를 만들어 보자. 이 객체로 HTML 문서 전체를 다룰 수 있다. from bs4 import BeautifulSoup html_doc = """ The Dormouse's story """ soup = BeautifulSoup(html_doc, 'html.parser') ``` 그럼 이제 HTML 문서의 태그에 쉽게 ..
데이터의 무결성(Data Integrity)이란 데이터베이스에서 저장, 검색, 수정 등을 거쳐도 데이터의 정확성, 일관성, 유효성이 유지되는 것을 의미한다. 데이터 무결성을 유지하기 위한 규치과 제약 조건이 데이터베이스에 설정되며, 이는 데이터가 업데이트되거나 삭제될 때 해당 규칙을 따르도록 하는 데 사용된다. 데이터 무결성에는 주로 네 가지 유형이 있다. 엔티티 무결성: 각 테이블에는 고유한 키(기본 키)가 있어야 하며, 이 키는 NULL 값이거나 중복 될 수 없다. 참조 무결성: 외래 키로 다른 테이블을 참조하는 경우, 이 외래 키 값은 반드시 참조하는 테이블의 기본 키 값 중 하나이거나 NULL이어야 한다. 고객과 주문이 있는 데이터베이스를 생각해보자 각각의 주문은 특정 고객에게 연결되어있고, 이련..
on_delete=models.SET_DEFAUAT는 객체가 삭제될때 삭제되는 객체에 연결된 다른 객체를 어떻게 처리할 것인지를 정의한다. 예를 들어, 웹사이트에는 하나의 글이 존재해야한다고 했을때. 1번글을 사용자가 방문한 기본글 이라고 하자 2번글에는 댓글이 1번댓글과 2번 댓글이 존재한다. 사용자는 2번글을 삭제하려고 한다. 그때 on_delete=models.SET_DEFAUAT 옵션을 사용하면 2번글을 삭제할때 2번글에 속해있던 1번댓글과 2번 댓글이 1번글로 이동한다. 이 옵션을 사용할 때는 기본값으로 설정할 객체가 항상 존재할 수 있도록 관리해야한다. on_delete=models.SET_DEFAUAT 옵션을 사용하는 이유 데이터의 무결성 유지: 1번글이 삭제되었을 때 댓글들이 참조할 대상이..
Extends extends: extends는 주로 모든 페이지에서 공통으로 사용되는 헤더와 푸터를 가진 기본 템플릿을 생성하고, 이를 다른 템플릿들이 상속받아 각자의 내용을 추가해 재 사용하는 것을 말한다. 결과적으로 기본적으로 만든 템플릿을 재사용하는 것이다. 쉽게말해 매일 일기를 쓴다면 일기 제목과 날씨 내용은 매일 들어갈 것이다. 그 형식에다가 하루 하루의 내용을 채워나갈텐데 매번쓰는 형식을 불러오기 해서 그날의 내용만 채우는거라고 보면된다. 보통 홈페이지에는 제목이 모든페이지 위쪽에 보이기 마련이다. 그럼 모든 페이지에서 제목의 html을 새로 만드는게 아니라 불러오면된다. 예를 들어 기본 HTML파일의 이름을 base.html이라고 하고 이렇게 작성해보겠다. {% block content %}..
Django HTML 템플릿 포스트에서 MyModelListView를 /posts/라는 URL에 연결해서 사용자에게 보여주고 싶다면 URL 설정을 해야한다고 말했었다. 그 설정은 urls.py 파일에서 작성할 수 있다. from django.urls import path from .views import MyModelListView urlpatterns = [ path('posts/', MyModelListView.as_view(), name='post-list'), ] 위 코드에서 path함수는 첫 번째 인자로 사용자가 들어오는 URL 패턴 주소를(posts/), 두번째 인자로 그 URL에 연결될 뷰(MyMoselListView.as_view())를 받는다. 따라서, 사용자..