티스토리 뷰
아나콘다 사용
anaconda navigator 실행 후 파이썬 버전, pip 등 관리가능하다.
jupyter notebook 실행 하면 프로그래밍 시간 단축에 큰 도움이 된다.
selenium
크롬 웹드라이버는 업데이트 되면 새로 다운로드 받아 저장한다.
pip install chromedriver
python 실행 파일과 같은 곳에 두어도 되고, 다른 곳에 두어도 된다.
browser.implicitly_wait(1) 는 get 보다 먼저 나와서 시간 설정
browser = webdriver.Chrome('./chromedriver')
browser.implicitly_wait(1)
browser.get(url)
<div class="class1 class2 class3">와 같이 띄워쓰기로 클래스 이름이 여러개인 경우 하나만 검색가능하다.
a = browser.find_elements_by_class_name('class1')
여러 클래스 이름을 검색하고 싶으면 xpath를 사용한다.
browser.find_element_by_xpath('//div[@class="class1 class2 class3"]')
get_attribute
b = i.find_elements_by_tag_name('a')
print b[0].get_attribute('href')
동적 웹사이트의 경우 스크롤 다운 해야 페이지가 모두 로드 되는 경우가 있다.
그럴때에는 스크롤 다운 하는 명령사용
browser.execute_script("window.scrollTo(0, document.body.scrollHeight);")
서브 프레임으로 포커스 이동 & 다시 메인페이지로 돌아오기
browser.switch_to.frame(browser.find_element_by_xpath('//*[@id="frame2"]'))
browser.switch_to.default_content()
브라우저 페이지 이동
browser.back()
browser.foward()
find_element_by_xpath - 크롬 브라우저의 '검사' 탭에서 xpath 복사 가능
.send_keys('text to write')
browser 속성
driver.page_source
Find 속성
browser.find_element_by_name('memberId').click()
browser.find_element_by_name('memberId').text
innerHTML = a.get_attribute("innerHTML")
Python 기타 팁
랜덤 파일 명으로 웹 이미지 파일 저장하기
import uuid
imgName = uuid.uuid4().hex + ".png"
#python2
import urllib
urllib.urlretrieve("http://image_URL", imgName)
#python3
import urllib.request
urllib.request.urlretrieve("http://image_URL", imgName)
몇 초 기다리기
from datetime import date
time.sleep(5)
list.append('Item 1')
반올림
round(3.14) = 3
round(3.14, 1) = 3.1
round(6.145, 2) = 3.15
파일 쓰기
f = open("test.text", 'w')
f.write(longTextsWithManyRows)
f.close()
날짜
from datetime import date
perfDate = datetime.datetime.strptime(perfomDate,"%Y-%m-%d").date()
dt = datetime.datetime.now()
d0 = date(perfDate.year, perfDate.month, perfDate.day)
d1 = date(dt.year, dt.month, dt.day)
dateGap = d0-d1
print dateGap.days
'Python' 카테고리의 다른 글
jupyter notebook에 pip 인스톨하기 (0) | 2020.01.02 |
---|---|
쉘에서 크롬 selenium headless로 실행하기 (0) | 2020.01.02 |
우분투 서버에 selenium 설치하기 (0) | 2020.01.02 |
크롬북 chromebook 에서 selenium, jupyter notebook 사용하기 (0) | 2019.12.24 |
파이썬 날짜 시간 함수 (0) | 2017.05.04 |