selenium 遇见 display:none元素解决方法

selenium 遇见 display:none元素解决方法

有次在爬深圳房地产信息网信息,但是在爬备案号的时候卡到了,备案名爬不下来,只有用鼠标放在信息上面才会出现
在这里插入图片描述
在这里插入图片描述
后来检查了一下发现display:none,这是一个css设置,可以让模块不显示
在这里插入图片描述
经过一翻查询发现可以用selenium执行js代码来修改css

#  一页20个数据
for x in range(20):
	# 根据类来定位元素,必须加序号不然报错
    js = "document.getElementsByClassName('left f16')[%d].style.display='block'" % x
    # 执行js代码
    driver.execute_script(js)
    time.sleep(0.1)

class类不能简单直接拿来判断,因为具有多个class,所以要加上数组才能判断。
不一定必须使用类来定位id也可以:document.getElementById(“id值”)
参考资料:JS:Cannot set property ‘display’ of undefined问题.

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值