如何解决如何加载更多动态生成的网页 html 元素?
我想从带有 python 和 selenium 的网页 (https://www.evaschulze-aufgabenpool.de/index.php/s/smwP6ygck2SXRtF?path=%2FKlasse12) 中获取一些数据,但我想要的内容是动态生成的,要查看所有内容,您必须在网页上向下滚动。更具体地说,我想获取网站上显示的所有文件夹名称,但它不起作用。我尝试使用 selenium 向下滚动整个网页似乎也不起作用,但我不知道我做错了什么,或者我还能做些什么来获取所有文件夹名称。所以我的问题是:如何确保我始终获得网站的所有动态生成的文件夹。
这是我正在使用的代码:
from time import sleep
from selenium import webdriver
url = "https://www.evaschulze-aufgabenpool.de/index.PHP/s/smwP6ygck2SXRtF?path=%2FKlasse12"
driver = webdriver.Chrome("chromedriver.exe")
driver.get(url)
driver.maximize_window()
sleep(3)
for i in range(5):
driver.execute_script("window.scrollTo(0,1080)")
sleep(3)
data = driver.find_element_by_tag_name("table")
data = data.find_elements_by_tag_name("tr")
for element in data:
name = element.get_attribute("data-file")
if name is not None:
print(name)
driver.quit()
解决方法
Cześć,使用 NextCloud 提供的 API 列出您的文件和许多其他内容。这样你就会得到纯文本的答案。您可以在此处找到示例:Nextcloud list files using API
使用 Python requests 库代替 curl 工具,使用 HTTP GET 查询。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。