想要做的事情
我想要自動滑動到憲法的第43條,在法條之中CSS class=”row”非常多,這時自己慢慢算或是使用BeautifulSoup去找很耗時間,要靠的是Chrome的工具,按下F12或Ctrl + Shift + I可開啟。
使用ActionChains 捲動
from selenium import webdriver
from time import sleep
from selenium.webdriver.common.by import By
from selenium.webdriver.common.action_chains import ActionChains
url="https://law.moj.gov.tw/LawClass/LawAll.aspx?pcode=A0000001"
driver=webdriver.Chrome("C:/anaconda/chromedriver.exe") #驅動 路徑請設定自己的檔案路徑
driver.get(url)
driver.maximize_window()
sleep(0.3)
#element = driver.find_element_by_id("my-id")
content = driver.find_element(By.XPATH, '//*[@id="pnLawFla"]/div/div[48]') #元素位置
actions = ActionChains(driver)
actions.move_to_element(content).perform()
使用 javascript 捲動
from selenium import webdriver
from time import sleep
from selenium.webdriver.common.by import By
url="https://law.moj.gov.tw/LawClass/LawAll.aspx?pcode=A0000001"
driver=webdriver.Chrome("C:/anaconda/chromedriver.exe") #驅動 路徑請設定自己的檔案路徑
driver.get(url)
driver.maximize_window()
sleep(0.3)
#element = driver.find_element_by_id("my-id")
content = driver.find_element(By.XPATH, '//*[@id="pnLawFla"]/div/div[48]') #元素位置
driver.execute_script("arguments[0].scrollIntoView();", content)
參考文章:你想學更多關於Scroll 以下可以看看