无法滚动到selenium python中的元素

时间:2017-01-31 23:10:02

标签: python selenium

我正在尝试搜索后访问下一页。我正在获取第一页,但为了转到下一页,我需要向下滚动以单击下一页元素。我尝试了不同的方法,如代码中所示向下滚动网页,但尽管所有尝试我都是仍然收到ElementNotVisibleException错误。任何人都可以告诉我为什么滚动不起作用。

import selenium
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from bs4 import BeautifulSoup
import time
driver = selenium.webdriver.PhantomJS(executable_path=r'C:\phantomjs-2.1.1-windows\bin\phantomjs.exe')
driver.get('https://www.texasbar.com/am/Template.cfm;jsessionid=7EB4486736A022DC2AB99C24E9071D70.cfusion?Section=Find_A_Lawyer&template=/Customsource/MemberDirectory/Search_form_client_main.cfm&CFID=39868973&CFTOKEN=2f314a81f05a55c6-469AE4D3-91FD-AA7B-9D59C8F7DB39779F')
time.sleep(4)
elem = driver.find_element_by_id("Zip").send_keys("75001"+"\n")
time.sleep(6)
new = driver.find_element_by_css_selector("form[name=\"HiddenFormFields\"] > a.next-btn.btn")
driver.execute_script("window.scrollTo(0, 7664)")
#driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
#driver.send_keys(Keys.END)
new.click()
time.sleep(4)
pagesource = driver.page_source
soup = BeautifulSoup(pagesource, 'html.parser')
print(soup)

1 个答案:

答案 0 :(得分:2)

最后我解决了这个问题。在获取网址之前,我已将浏览器窗口大小driver.set_window_size(1124,850)设置为已解决。