Python中文
首页
教程
问答
标签
搜索
登录
注册
使用Selenium Webdri向下滚动页面
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有一个动态页面,当用户向下滚动页面时加载产品。我想得到在显示页面上呈现的产品总数。目前,我正在使用以下代码,以达到底部,直到所有的产品都被显示。</p> <pre><code>elems = WebDriverWait(self.driver, 30).until(EC.presence_of_all_elements_located((By.CLASS_NAME, "x"))) print len(elems) a = len(elems) self.driver.execute_script("window.scrollTo(0, document.body.scrollHeight);") time.sleep(4) elem1 = WebDriverWait(self.driver, 30).until(EC.presence_of_all_elements_located((By.CLASS_NAME, "x"))) b = len(elem1) while b > a: self.driver.execute_script("window.scrollTo(0, document.body.scrollHeight);") time.sleep(4) elem1 = WebDriverWait(self.driver, 30).until(EC.presence_of_all_elements_located((By.CLASS_NAME, "x"))) a = b b = len(elem1) print b </code></pre> <p>这很有效,但我想知道是否有更好的选择?</em></p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>如果您不知道页面中可能添加了多少元素,但您只想获取所有元素,那么最好循环如下:</p> <ul> <li>如上所述向下滚动</li> <li>等几秒钟</li> <li>保存页面源的大小(xxx.page\u source)</li> <li>如果页源的大小大于上次保存的页源大小,则返回并向下滚动一些页源</li> </ul> <p>我想屏幕截图的大小也可以很好地工作,这取决于你正在加载的页面,但这是在我当前的程序工作。</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
当用户用PYTHON设置一个或一个不带值的URL时,他们怎么能输入一个/a的代码呢?
6 回答
当用户登录到站点时,如何显示不同的导航栏
9 回答
当用户登录时,在Flask中向用户显示处理结果
4 回答
当用户的Flask会话结束时,我如何从Redis后端中移除所有Celery结果?
7 回答
当用户的Okta配置文件字段当前为blan时,更新该字段
5 回答
当用户的付款逾期2天时,从Django模型检索数据
5 回答
当用户的消息以问号结尾时,如何让机器人说些什么?
6 回答
当用户的系统上可能也安装了Python 2.7时,如何在用户的系统上运行Python 3脚本?
9 回答
当用户确定打印数量时,使用Matplotlib打印动画
8 回答
当用户离开时是否可以删除整个网页?
1 回答
当用户给出一个单词时如何打印?
6 回答
当用户继续更改TKin中的值(使用trace方法)时,使用Entry并更新输入的条目
3 回答
当用户编辑表单字段时,从Django时间字段中删除秒数
8 回答
当用户被更改时,消息不会来自web套接字
5 回答
当用户访问表单时,如何使表单为只读,而不具有更改权限
1 回答
当用户试图更改对象的值时,使用描述符类引发RuntimeError
9 回答
当用户调整GUI的大小时,是否有方法更改GUI内容的大小?
7 回答
当用户调整风的大小时,pythontkinter小部件的大小会不均匀
9 回答
当用户购买某个类别时,是否查找其他类别的销售?
9 回答
当用户转到上一页时,Django和芹菜插入操作
5 回答