소개
게시글
질문&답변
2023.02.08
값넣을때 ws['A1'] vs ws['A1'].value
강의를 안봐서 무슨 내용인지는 모르겠지만 ws가 혹시 리스트가 아닌 딕셔너리 인가요?만약 딕셔너리라면, ws라는 딕셔너리에 "A1"이라는 key값에 해당하는 value에 값을 넣어주는 행위로 동일한 결과라고 예상됩니다.
- 0
- 1
- 210
질문&답변
2023.02.08
find_element_by_id, find_element_by_link_text 등의 함수가 존재하지 않습니다.
selenium버전이 강의에서 사용하신것 보다 높아서 그런것으로 보입니다. 아래처럼 한번 확인 해보시면 좋을것 같습니다.from selenium import webdriver from selenium.webdriver.common.by import By browser = selenium.Chrome() browser.find_element(By.ID, "id")첫번째 인자로 넣어줄때 By.ID / By.XPATH 이런식으로 가능합니다
- 0
- 1
- 317
질문&답변
2023.02.08
파이썬 코드가 완료되면 브라우저가 닫힙니다.
만족하실만한 답이실지는 모르겠지만,저도 동일하게 셀레니움이 자동으로 창이 내려가서아래와같이 임시로 코드 추가해서 사용중인데 참고 부탁 드립니다. while True: pass
- 1
- 1
- 332
질문&답변
2023.02.07
매물 번호 매김에 대하여
아직 강의를 보지않아서 나도코딩님께서 어떤 코드를 작성하셨는지 모르겠습니다만,enumerate는 list를 순회할때 주로 사용하게 됩니다.어떤 경우나면 index의 번호와 해당 index에 맞는 값을 모두 필요로할때 사용합니다.a = [1,2,3,4,5]위와같은 list가 있을때 enumerate를 사용하면,for idx, val in enumerate(a): print(f"{val} / {idx}")num 이라는 변수를 만들지 않아도 list의 idx값을 확인할 수 있습니다.
- 0
- 1
- 400
질문&답변
2023.02.06
from selenium import webdriver ?
selenium과 beautifulsoup의 차이를 이해하시면 수월하실것 같습니다.selenium은 chromedriver를 통해서 chrome으로 webpage를 동적으로 구현할 수 있습니다. 스크롤을 움직이는거나 클릭을 하거나와 같은 행동입니다.반면에 beautifulsoup은 주어진 page의 html정보만 가지고 원하는 것들을 파싱하도록 도와준다고 생각하시면 될거같습니다.이번 강의에서는 구글영화는 동적페이지(유저와 인터렉션이 필요한, 마우스 스크롤을하면 영화가 로딩이 되면서 더 많은 결과를 보여주는)를 스크래핑할때 셀레니움과 뷰리풀솝의 차이를 보여주기를 원하셔서 뷰리풀솝으로 먼저 보여주신게 아닌가 생각됩니다. 따라서 질문 주신 부분은, 내가 하려고 하는게 정적인 페이지의 정보를 파싱해오는것인지, 혹은 동적인 페이지를 조작해야하거나 혹은 웹을 자동화 해야하는지 필요여부에 따라서 selenium을 사용할건지 bs4를 사용할건지에 따라 달라지는 부분이라고 생각됩니다.
- 0
- 1
- 267