페이지의 특정 요소로 스크롤하려고하지만 그 전에 myelement를 WebElement 개체로 설정하려고합니다. 여기에 코드가 있습니다.
from selenium import webdriver
browser.get("http://www.agoda.com/the-coast-resort-koh-phangan/hotel/koh-phangan-th.html")
WebElement myelement = browser.findElement(By.id("next-page"));
그러나 오류가 발생합니다.
WebElement myelement = browser.findElement(By.id("next-page"));
^
SyntaxError: invalid syntax
내가 무엇을 놓치고 있습니까?
업데이트 : 좋아, 내가 자바를 작성하려는 것 같습니다! 첫 번째 회신에서 언급했듯이 실제 코드는 다음과 같습니다.
from selenium import webdriver
from selenium.webdriver.common.by import By
browser = webdriver.Firefox()
browser.get("http://www.agoda.com/the-coast-resort-koh-phangan/hotel/koh-phangan-th.html")
browser.find_element_by_xpath("//a[@id='next-page']").click()
myelement = browser.find_element(By.id("next-page"));
((JavascriptExecutor) browser).executeScript("arguments[0].scrollIntoView(true);", element);
Thread.sleep(500);
browser.find_element_by_xpath("//a[@id='next-page']").click()
오류가 발생합니다.
File "<ipython-input-22-bb983f3ceca8>", line 10
((JavascriptExecutor) browser).executeScript("arguments[0].scrollIntoView(true);", element);
^
SyntaxError: invalid syntax
아마도 Java를 다시 작성하고 있지만 어떻게 수정해야할까요?
Python은 자바가 아닙니다. (WebElement 요소 = ...;)
다음 은 파이썬 메서드 등에 대한 문서 링크입니다 .
실제로 원하는 것은 다음과 같습니다.
from selenium import webdriver
browser = webdriver.Firefox()
browser.get("http://www.agoda.com/the-coast-resort-koh-phangan/hotel/koh-phangan-th.html")
myelement = browser.find_element_by_id("next-page")
By
위에서 사용할 수 있지만 find_element_by_id
조금 더 읽기 쉬운 imo입니다.
편집하다:
두 번째 비트도 마찬가지로
browser.execute_script("arguments[0].scrollIntoView();", element)
나는 위의 내용을 한동안 사용하지 않았으므로 실제로 다음과 같을 수 있습니다.
browser.execute_script("return arguments[0].scrollIntoView();", element)
다음과 같은 요소로 스크롤 할 수도 있습니다.
browser.execute_script("window.scrollTo(0, %d)" % element.location['y'])
Thread.sleep(500);
또한 작동하지 않을 것이며 ;
줄 뒤에 세미콜론 을 제거 할 수 있습니다. 반드시 "잘못된"것은 아니지만 중복됩니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다