【Python + selenium】在浏览器打开新页签,打开方式
2017-09-06 11:34
281 查看
很过新接触selenium ,在爬取网页时,在新打开页面,总是抓取不到页面内容
原因如下:
打开链接,时间停留过短,网页还没打开,这是后你抓取网页内容,肯定是取不到的,一般可以利用driver.implicitly_wait(7) 设置智能等待。如果是新打开的页签,这个时候一定要先移动句柄,再抓取网页内容
如果是当前页面,不能抓取内容,记得检查源码, 看看所需抓取内容是否是在ifream中的,如果在ifream中的,记得先找到ifream,在获取ifream中内容,例如
iframe= driver.find_element_by_xpath(".//*[@id='container']/div[4]/iframe") driver.switch_to_frame(iframe)
可能有些刚接触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])
相关文章推荐
- selenium如何通过快捷键关闭浏览器打开的新页签
- python+selenium自动化测试~打开浏览器报TypeError: 'module' object is not callable
- 使用selenium+python;在页面A点击一个按钮跳转到页面B,页面A没有关闭,浏览器打开了一个B,切换窗口定位页面B的元素
- 使用Python2.7操作Selenium2时只打开浏览器不load URL的解决方法
- python用浏览器打开网页的两种方式
- Python+selenium打开或关闭浏览器
- python+selenium自动化不打开浏览器测试
- python selenium启动浏览器打开百度搜索
- python下几种打开文件的方式
- 初学者的Selenium自动化测试指南,基于Python(三)——浏览器相关操作
- python selenium打开新窗口,多窗口切换
- python3 selenium打开Chrome报错闪退问题
- 解决Selenium Webdriver执行测试时,每个测试方法都打开一个浏览器窗口的问题
- python 常用技巧 1.设置pip国内源 2.打开服务器上的图像界面3.创建linux命令的快捷方式4.中文编码
- 用编程方式打开特定应用程序的文件、打开浏览器并浏览网页
- python+chrome+Selenium模拟手机浏览器
- 详解Python中open()函数指定文件打开方式的用法
- Python+Selenium中级篇之4-封装一个自己的类-浏览器引擎类
- ie设置默认,打开快捷方式会弹出2个浏览器网页
- Python+Selenium基础篇之2-打开和关闭火狐浏览器