【Python + selenium】在浏览器打开新页签

【Python + selenium】在浏览器打开新页签,打开方式

2017年09月06日 11:34:25 宇风-飞扬 阅读数:3472 标签: seleniumpython句柄移动 更多

个人分类: python

版权声明:希望与广大Python爱好者,可以相互交流,欢迎留言!欢迎转载(请注明出处) https://blog.csdn.net/EB_NUM/article/details/77864470

很过新接触selenium ,在爬取网页时,在新打开页面,总是抓取不到页面内容

原因如下:

  1. 打开链接,时间停留过短,网页还没打开,这是后你抓取网页内容,肯定是取不到的,一般可以利用driver.implicitly_wait(7) 设置智能等待。
  2. 如果是新打开的页签,这个时候一定要先移动句柄,再抓取网页内容
  3. 如果是当前页面,不能抓取内容,记得检查源码, 看看所需抓取内容是否是在ifream中的,如果在ifream中的,记得先找到ifream,在获取ifream中内容,例如
     iframe= driver.find_element_by_xpath(".//*[@id='container']/div[4]/iframe")
     driver.switch_to_frame(iframe)
  • 1
  • 2
  1. 可能有些刚接触selenium的同学 ,不知道如何打开一个新页签,下边我就给个事例:
            driver = webdriver.Firefox()
            #我们先打开一个网页
            driver.get("https://www.zhipin.com/user/login.html")
            #浏览器 新窗口打开连接
            newwindow = 'window.open("https://www.baidu.com")'
            driver.execute_script(newwindow)
            #移动句柄,对新打开页面进行操作
            driver.switch_to_window(driver.window_handles[1])
            #具体操作
            driver.find_element_by_xpath("")
            #关闭该新打开的页面
            driver.close()
            #不关闭,要移动到上一个页面,我们要移动句柄
            driver.switch_to_window(driver.window_handles[0])
  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值