本实例实现了如下效果:
google浏览器自动打开网页一,实现窗口最大化,输入关键字查询,并把该关键字全选、复制;然后在新标签页中打开网页二,并切换句柄至第二个,使用xpath定位输入框,粘贴关键字,点击查询按钮。代码如下:
from selenium import webdriverfrom selenium.webdriver.common.keys import Keysimport time#创建webdriver对象,字符串前面加r,声明后面的字符串是普通字符串wd=webdriver.Chrome()# 设置最大等待时长为 10秒wd.implicitly_wait(10)# 调用webdriver的get方法打开网址wd.get('http://网址1')wd.maximize_window() # 窗口最大化#根据id选择元素element=wd.find_element_by_xpath('//*[@id="kw"]')# 清除输入框已有的字符串element.clear()#向已选择的元素输入文字,\n表示换行element.send_keys('python\n')element.send_keys(Keys.CONTROL, 'a') # 全选element.send_keys(Keys.CONTROL, 'c') # 复制#等待2秒time.sleep(2)#打开新标签页js = 'window.open("http://网址2");'wd.execute_script(js)handles = wd.window_handles # 获取当前窗口句柄集合(列表类型)wd.switch_to.window(handles[1]) #切换窗口至第2个element=wd.find_element_by_xpath("//input[@id='input']")element.send_keys(Keys.CONTROL, 'v') # 复制wd.find_element_by_xpath("//input[@id='search-button']").click()