繁体   English   中英

通过 Python 中的 Selenium 向下滚动 div 标签内的表格

[英]Scrolldown a table inside a div tag in through Selenium in Python

我想使用 python 中的 Selenium 框架滚动到https://covid19.who.int/table的最后一行。

看下面我的片段

url = 'https://covid19.who.int/table/'
Path_ChromeDriver = 'E:\chromedriver_win32\chromedriver.exe'
driver = webdriver.Chrome(Path_ChromeDriver)
driver.get(url)
time.sleep(10)
driver.execute_script("window.scrollTo(0,document.body.scrollHeight)")
target = driver.find_element_by_xpath('//div[@role="rowgroup"]//div[@role="row"][last()]//div[@class="column_Deaths td"]/div')
driver.execute_script("arguments[0].scrollIntoView(true);", target)

但这并不能帮助我向下滚动 div 标签。 任何帮助将不胜感激。 我希望从“美洲”行开始从表中提取所有数据。

有关我需要的数据,请参见屏幕截图。 在此输入图片描述 在此先感谢

首先使用这行代码获取表的所有行。

rows = driver.find_elements_by_css_selector("div[class=\"tr depth_0 \"]")

现在像这样滚动到最后一行:

driver.execute_script("arguments[0].scrollIntoView()",rows[len(rows)-1]

这样,表格将滚动到行变量中的最后一行。

因此,如果要滚动到表的末尾,则必须使用 while 循环并再次获取所有行并 scrollIntoView 最后一行。 While 循环,因为我检查了查找所有行只会返回 20-28 行,这些行在页面上可见。 因此,使用 while 循环到 go 直到结束。

首先,你可以使用 css 选择器到 select 你想要的表格,就像下面的代码,为什么在后面添加一个 div 因为目标是 div 下面的 div 其中 class 是 tbody

$('div[class="tbody"]>div')

第二,使用scrollTop滚动表格,给可以控制你想滚动多少的数字

$('div[class="tbody"]>div').scrollTop=10000

如果你把这段代码放在控制台,表格会向下滚动~

最后,稍微改变一下以适应脚本

driver.execute_script("document.querySelector('div[class=\"tbody\"]>div').scrollTop=10000")

给你~

如何打印里面的所有文字<div>位于 a 内的标签<li> python selenium</li></div><div id="text_translate"><p> 大家好,我想在&lt;div&gt;标签内打印一个名称列表,而&lt;div&gt;标签在&lt;li&gt;标签内,我将附上 HTML 片段。 请帮我打印出来。</p><p> 在下面的代码段中,有一个 class linkedAccountUserName就像我有 6 个名字在另一个下面我想打印这些名字。</p><p> 我正在使用 python selenium 来获取它。</p><p> <a href="https://i.stack.imgur.com/GADNT.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/GADNT.png" alt="在此处输入图像描述"></a></p><p> 这是网站片段 我将单击个人资料图标并列出链接帐户下方的所有可用名称<a href="https://i.stack.imgur.com/5kxUy.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/5kxUy.png" alt="在此处输入图像描述"></a></p></div>

[英]How to print all the text inside <div> tag which is inside a <li> python selenium

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何使用 selenium 在 Javascript 表中向下滚动? 在 Selenium/Python 中循环遍历 div 内的 div 如何通过Selenium和Python在嵌套div标签中找到按钮? 从带有向下滚动的表中抓取 Selenium 数据 在Angular网站中获取确切的文本 <div> 用Selenium和Python标记? 如何读取 selenium python 中 div 标签内的文本? 硒python表中的标签 如何使用 selenium 和 python 抓取 div 标签内的标签标签中的文本值? 如何使用python硒提取Div标签中存在的li标签内容 如何打印里面的所有文字<div>位于 a 内的标签<li> python selenium</li></div><div id="text_translate"><p> 大家好,我想在&lt;div&gt;标签内打印一个名称列表,而&lt;div&gt;标签在&lt;li&gt;标签内,我将附上 HTML 片段。 请帮我打印出来。</p><p> 在下面的代码段中,有一个 class linkedAccountUserName就像我有 6 个名字在另一个下面我想打印这些名字。</p><p> 我正在使用 python selenium 来获取它。</p><p> <a href="https://i.stack.imgur.com/GADNT.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/GADNT.png" alt="在此处输入图像描述"></a></p><p> 这是网站片段 我将单击个人资料图标并列出链接帐户下方的所有可用名称<a href="https://i.stack.imgur.com/5kxUy.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/5kxUy.png" alt="在此处输入图像描述"></a></p></div>
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM