강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của hanjoongyoo0652
hanjoongyoo0652

câu hỏi đã được viết

Công thức Python - Giới thiệu về Sử dụng Web (bao gồm sách điện tử)

[Tự động hóa web] 3. Bấm tới 50

http://zzzscore.com/memory/ 에 적용했을 때,

Viết

·

1.4K

2

from selenium import webdriver
import time

driver = webdriver.Chrome('chromedriver')
driver.get('http://zzzscore.com/memory/')
driver.implicitly_wait(300)

time.sleep(5)

btns=driver.find_element_by_xpath('//*[@id="grid"]/div[*]')
print(len(btns))

해당 게임 사이트에 기억력/순발력 테스트가 있길래 배운내용을 적용해보려고 했습니다.

1to50과 같이 xpath가 같은 형식이고 div태그 안에 내용이 있길래 저렇게 코드를 짰는데요.

btns에 제대로 내용이 안담기는 것 같습니다.

Traceback (most recent call last):
  File "C:/Users/user/Desktop/hotch/02 selenium/fast.py", line 11, in <module>
    print(len(btns))
TypeError: object of type 'WebElement' has no len()

이렇게 에러가 뜨네요.

혹시 가능하시다면 해당 페이지의 버튼을 가져오는 방법을 가르쳐주실수 있으신가요?

python

Câu trả lời 2

1

hanjoongyoo0652님의 프로필 이미지
hanjoongyoo0652
Người đặt câu hỏi

.find_elements_by_xpah에서 해당 xpath를 모두 추출하기위해서 s를 붙였어야하는데 빠트렸네요.. 감사합니다!

1

soorte2140795님의 프로필 이미지
soorte2140795
Người chia sẻ kiến thức

어 저같은 경우에는 위에 올려주신 xpath로 잡혔습니다. 제가 테스트한 코드를 공유해드릴게요.

저는 출력결과가 16으로 나왔습니다.

from selenium import webdriver

driver = webdriver.Chrome('chromedriver')
driver.get('http://zzzscore.com/memory/')
driver.implicitly_wait(300)

def clickBtn():
    btns = driver.find_elements_by_xpath('//*[@id="grid"]/div[*]')
    print(len(btns))

clickBtn()
Hình ảnh hồ sơ của hanjoongyoo0652
hanjoongyoo0652

câu hỏi đã được viết

Đặt câu hỏi