我想用scrapy + selenium抓取新闻文章的链接。我使用的网站使用了一个“加载更多”按钮,所以我显然希望selenium点击这个按钮来加载所有文章。我已经寻找过类似的问题,并尝试了各种选项,如
element = driver.find_element(By.XPATH, value='//*[@id="fusion-app"]/main/div/div/div/div/div[4]/div/div/button')
driver.execute_script("arguments[0].click();", element)
和
element = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, ".ais-InfiniteHits-loadMore")))
ActionChains(driver).move_to_element(element).click().perform()
我还在中间插入了一些print语句来检查它是否运行了代码,这看起来工作得很好;我认为这只是一个按钮没有被定位/点击的问题。
这是按钮btw的html:
<button class="ais-InfiniteHits-loadMore">Load more </button>
当我打印element
时,得到的结果是:<selenium.webdriver.remote.webelement.WebElement (session="545716eef622a12bdbeddef99e02bdef", element="551741ec-4616-4bd4-b8fd-57c2f4bffb00")>
个
有人能帮我吗?先谢谢你。
1条答案
按热度按时间ugmeyewa1#
当你可以用javascript点击元素时,你会遇到两个不同的错误,一个是弹出窗口,另一个是元素点击界面。
汇入: