を取得します。
示すように、コードは動作します
In [22]: from selenium import webdriver
In [23]: dr = webdriver.PhantomJS()
In [24]: dr.get("http://www.nytimes.com/column/corner-office")
In [25]: btn = dr.find_element_by_css_selector("button.button.load-more-button")
In [26]: btn
Out[26]: <selenium.webdriver.remote.webelement.WebElement at 0x7f50c34d7668>
In [27]: btn.click()
Firefoxで、.maximize_window()を設定することも正常に動作します:FirefoxとChtormで
from selenium import webdriver
dr = webdriver.Firefox()
dr.maximize_window()
dr.get("http://www.nytimes.com/column/corner-office")
btn = dr.find_element_by_css_selector("button.load-more-button")
btn.click()
あなたは、あなた一度以上の負荷をクリックした後、残りの部分を取得するためにスクロールしなければならない、最初のクリック後にボタンはそこにありません:
dr = webdriver.Firefox()
dr.maximize_window()
dr.get("http://www.nytimes.com/column/corner-office")
btn = dr.find_element_by_css_selector("button.load-more-button")
btn.click()
print(len(dr.find_elements_by_xpath("//h2[@class='headline']")))
dr.execute_script("window.scrollTo(0, document.body.scrollHeight);")
print(len(dr.find_elements_by_xpath("//h2[@class='headline']")))
あなたを与える
:あなたは「をクリックして受け取ることになる他の要素」のような例外を取得する場所
elem = self.driver.find_element_by_css_selector(".button.load-more-button[aria-controls$='set-latest']");
//this line will scroll down to make element visible
self.driver.execute_script("window.scrollTo(" + elem.getLocation().x + "," +(elem.getLocation().y- 100) + ");");
elem.click();
はこれが働いています@Fotis? – noor