这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 | ||
爬虫 [2019/09/30 14:15] admin |
爬虫 [2020/02/01 21:41] (当前版本) |
||
---|---|---|---|
行 4: | 行 4: | ||
===== 安装WebDriver ===== | ===== 安装WebDriver ===== | ||
- 打开谷歌浏览器->帮助->关于xxxx->查看版本 | - 打开谷歌浏览器->帮助->关于xxxx->查看版本 | ||
+ | - 下载相应版本的[[http://chromedriver.storage.googleapis.com/index.html?|webDriver]],支持的大版本如74是相同的,74.x.x.x的各个小版本基本都是可以适用的 | ||
+ | - 配置好webdriver环境变量 | ||
+ | ====== 参考博客 ====== | ||
+ | [[https://blog.csdn.net/q1694222672/article/details/82836315|Selenium用法笔记(解决动态渲染页面)]] | ||
+ | ====== 获取字符为空 ====== | ||
+ | ===== 问题 ===== | ||
+ | driver.find_element_by_xxx().text() 为空的解决办法 | ||
+ | ===== 原因 ===== | ||
+ | 当前定位的元素可能被隐藏了,而Selenium WebDriver只会与可见元素交互,所以获取隐藏元素的文本总是会返回空字符串。 | ||
+ | ===== 解决方案 ===== | ||
+ | - 方法一:修改页面当前定位元素,或者当前元素父元素的CSS,使元素的is_displayed()值为true。 | ||
+ | - 方法二: is_displayed()为false的元素,依然可以通过getAttribute()方法获取元素的属性。可以使用element.attribute('attributeName'), 通过textContent,innerText,innerHTML等属性获取。 |