windows - python3 selenium2 获取JS动态页面title

 平凡天使zj 发布于 2022-10-26 16:43

想打印-- 易报活动网——-页面的所有图片title 发觉它是动态加载的 只打印出了部分 打印不出全部
打印title的如图:

能打印出来 但发觉只打印了能看到的部分 少了滚动条拖下来看到的title:

于是我用js定位到最后的元素 报了个找不到:

然后在直接JS操作 会拖动滚动条 但还是打印了部分:

新手总有十万个为什么 真要命, 太感谢SF这个平台, 太感谢你们的帮助 指教

代码如下:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.action_chains import  ActionChains
import time

driver = webdriver.Chrome()
driver.implicitly_wait(20)
driver.set_window_size(1200, 600)
# driver.maximize_window()
driver.get("http://www.yibaolib.com/Login.aspx")
user = driver.find_element_by_css_selector('#ContentPlaceHolder1_txtPhone').send_keys('15755172398')
pwd = driver.find_element_by_css_selector('#ContentPlaceHolder1_txtPwd').send_keys('456789')
driver.find_element_by_css_selector('#ContentPlaceHolder1_txtPwd').send_keys(Keys.ENTER)

time.sleep(6)

tema = driver.find_element_by_xpath('//*[@id="waterfall"]/p[1]/p[1]/p/p/a')
print(tema.text)

time.sleep(10)
# '''拖动到可见的元素去---也不行'''
# target = driver.find_element_by_xpath('//*[@id="waterfall"]/p[4]/p[33]/p/p/a')
# driver.execute_script("arguments[0].scrollIntoView();", target) #拖动到可见的元素去

'''JS直接操作 ---打印部分'''
js = "var q=document.body.scrollTop=10000"
driver.execute_script(js)


# time.sleep(10)
#
# for i in tema:
#     print(i.text)

tema1 = driver.find_elements_by_xpath('//*[@id="waterfall"]/p/p/p/p/a')
print(len(tema1))
for i in tema1:
    print(i.text)
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有