# 打印浏览器对,包含session信息
print(driver)
# 打印浏览器对象的详细参数,包含目录和方法
print(dir(driver))
# 设置浏览器全屏
driver.maximize_window()# 浏览器最大化
driver.minimize_window()# 浏览器最小化
#获取浏览器当前的尺寸
size = driver.get_window_size()
#打印
print(size)
设置浏览器大小
driver.set_window_size(500,500)
# 获取当前绝对位置
ps1 = driver.get_window_position()
print(ps1)
# 设置浏览的绝对位置
ps2= driver.set_window_position(500,200)
print(ps2)
driver.close() # 关闭当前浏览页
driver.quit() # 退出当前浏览器
#选择浏览器对象
dv = webdriver.Firefox()
dv.maximize_window()
# 在百度新网上停留5秒钟
time.sleep(5)
# 返回上一页
dv.back()
print("后退到",url)
#去往下一页
dv.forward()
print("前进到:",url2)
# 刷新浏览器
dv.refresh() # 输入的ssssssssss 重置了
# 获取当前网页地址
url2 = dv.current_url # 这个不是方法,是一个属性值
print("当前网页地址:",url2)
# 获取当前网页的标题
title = dv.title
print("网页标题:",title)
# 获取快照(截图)
png = dv.get_screenshot_as_png()
with open("baidu.jpg","wb") as f:
f.write(png)
print("文件写入成功")
# get_screenshot_as_file,建议使用png,
# 如果是其它图片格式,会发生warnings.warn,提示文件格示不匹配
dv.get_screenshot_as_file("baidu2.png")
print("文件保存成功,不需要手动写入文件,它会产生一个截图文件")
'''
# 根据元素id进行寻找(id ="")
dv.find_element_by_id()
# 根据name属性(name = "") 找元素
dv.find_element_by_name()
# 根据标签名找元素(属性名 = “”)
dv.find_element_by_tag_name()
# 根据类名找元素(class = "user")
dv.find_element_by_class_name()
# 根据xpath路径找元素
dv.find_element_by_xpath()
# 根据选择器寻找
dv.find_element_by_css_selector()
# 根据部分文字寻找
dv.find_element_by_partial_link_text()
# 寻找一组(多个)元素,带了s
dv.find_elements()
'''
url = "https://www.baidu.com"
# url = "file:///D:/pythonProject/pythonclass1/day09/a.html"
dv.get(url)
time.sleep(3)
# 定位到输入框
try:
pass
#根据ID找元素
el = dv.find_element_by_id('kw')
# 根据name找元素
el = dv.find_element_by_name('wd')
根据类名找元素
el = dv.find_element_by_class_name('s_ipt')
# 根据xpath找元素
el = dv.find_element_by_xpath("//*[@id='kw']")
# 根据css 选择器找元素(类名:.s_ipt,id:#kw)
el = dv.find_element_by_css_selector(".s_ipt")
el = dv.find_element_by_tag_name('input')
el.send_keys("sssssss")
# 根据链接的部分文字找元素
el = dv.find_element_by_partial_link_text("hao123")
print(el)
#多窗口的切换
driver.switch_to.window
#跳转到第一个表单
driver.switch_to.frame
# 切换到第二个表单
'''
特别要注意的。关于表单里的元素,我们必须先跳转到表单
然后才能在找表单里的元素。
如果表单里还嵌套的了表单,则先跳转到外层表单,再切换到内表单
才能找到内表单里的元素
'''
# 图片的右键操作
ActionChains(driver).context_click(el).perform()
time.sleep(3)
# 选中图片,并右键往下移动5次到另存网页
pyautogui.typewrite(['down','down','down','down','down'])
# 选中第5项并回车
pyautogui.typewrite(['enter','enter'])
time.sleep(1)
# 回车保存文件
pyautogui.press('enter')
# 列表的元素之间,进行悬浮划动
ActionChains(driver).move_to_element(el).perform()
time.sleep(1)