我想从链接中提取新闻文章,因为你一直在向下滚动,旧的文章不断出现。但我只想要过去一年的信息。我怎么能设置那个过滤器?
发布于 2021-09-19 15:11:04
像这样试试。
下面的代码滚动到找到18 days ago为止。将条件更改为a year ago,当它找到一年前的消息时,循环就会中断。
from selenium import webdriver
import time
driver = webdriver.Chrome(executable_path="path to chromedriver.exe")
driver.maximize_window()
driver.implicitly_wait(10)
driver.get("https://www.reuters.com/companies/AAPL.O")
i=0
try:
while True:
news = driver.find_elements_by_xpath("//div[@class='item']")
driver.execute_script("arguments[0].scrollIntoView(true);", news[i])
if news[i].find_element_by_tag_name("time").get_attribute("innerText") == "18 days ago":
break
print(news[i].find_element_by_tag_name("a").get_attribute("innerText"))
i += 1
time.sleep(.5)
except:
pass
driver.quit()https://stackoverflow.com/questions/69243652
复制相似问题