购物网站哪个好重庆网络推广外包
- 作者: 五速梦信息网
- 时间: 2026年04月20日 11:10
当前位置: 首页 > news >正文
购物网站哪个好,重庆网络推广外包,wordpress 2015,短视频排名seoselenium的webdriver介绍 从selenium导入webdriver模块#xff0c;在pycharm中跳转webdriver模块的init.py文件#xff0c;内容如图所示#xff1a;从selenium包的子目录中导入了很多模块并做了重命名#xff0c;用于支持如下 Chrome/Edge/Ie/Firefox/Safari浏览器。 使… selenium的webdriver介绍 从selenium导入webdriver模块在pycharm中跳转webdriver模块的init.py文件内容如图所示从selenium包的子目录中导入了很多模块并做了重命名用于支持如下 Chrome/Edge/Ie/Firefox/Safari浏览器。 使用方法类似如下 先导入webdriver模块 from selenium import webdriver 初始化各个浏览器的webdriver类 driver webdriver.Chrome() driver webdriver.Edge() driver webdriver.Firefox() driver webdriver.Ie() driver webdriver.Safari() 然后使用get函数打开网页地址比如打开百度 driver.get(https://www.baidu.com/) web页面元素的查找方法 当打开网页后我们得先定位到网页中各个元素的位置和信息这样selenium才能做对应的操作。 举例打开百度网页后通过查找元素找到输入框和百度一下对应元素信息。 1输入框的元素信息input idkw namewd classs_ipt value maxlength255 autocompleteoff 复制Xpath地址为//[idkw] 2百度一下按钮的元素信息 input typesubmit idsu value百度一下 classbg s_btn 对应Xpath为//[idsu] 3通过以上元素信息我们就拿到了输入框和百度一下按钮的id信息然后获取后输入文本和点击按钮就完成了一次查找和点击的动作。 当然我们除了通过id获取元素也可以通过namexpath等方式操作大家不妨多试下此处不再赘述。 webdriver.WebDriver类中的常用方法 在webdriver模块中WebDriver类提供了很多方法比如我们最常用的find_element方法用于找元素get方法用于打开网页等具体介绍如下 类型 函数 作用 网页相关 get() 打开传入的URL网页地址 current_url 是一个属性方法返回当前url page_source 是一个属性方法返回当前打开页面的源代码 refresh() 刷新当前页面。 back() forward() 浏览器的后退和前进操作。 implicitly_wait() 是一种智能等待指在设置的等待时间范围内只要满足了执行条件就会立即结束等待继续往下进行如果超时则抛出异常。 set_script_timeout(seconds) 设置脚本执行的时间指在设置的等待时间范围内只要满足了执行条件就会立即结束等待继续往下进行如果超时则抛出异常。 set_page_load_timeout(seconds) 设置页面加载的时间指在设置的等待时间范围内只要满足了执行条件就会立即结束等待继续往下进行如果超时则抛出异常。 timeouts 属性方法返回包含上面三个时间的Timeouts对象并可以设置三个时间的值。 cookies操作 get_cookies() 获取页面对应的cookie列表 get_cookie(name) 获取cookie列表中其中一个name传入值的cookie获取不到返回None delete_cookie(name) 删除cookie列表中其中一个name传入值的cookie delete_all_cookies() 删除所有的cookie add_cookie(cookie_dict) 添加一个cookie字典 窗口操作 maximize_window() minimize_window() fullscreen_window() 最大化或最小化或者全屏浏览器窗口。 window_handles() 存放打开窗口的句柄用于切换不同窗口 current_window_handle() 返回当前窗口的句柄 switch_to.window() 切换不同的窗口页面参数传入window_handles() 返回的列表中的某个句柄 get_window_rect() 获取窗口的坐标和大小 set_window_rect() 设置窗口的坐标和大小(坐标指距离屏幕左上角的横坐标和竖坐标值) get_window_position() 获取窗口的坐标默认是当前窗口也可以传某个窗口句柄(坐标指距离屏幕左上角的横坐标和竖坐标值) set_window_position() 设置窗口的坐标默认是当前窗口也可以传某个窗口句柄 get_window_size() 获取窗口的大小默认是当前窗口也可以传某个窗口句柄 set_window_size() 窗口的大小默认是当前窗口也可以传某个窗口句柄 close() 关闭当前窗口 SwitchTo类对应的一些操作 提示框操作 frame操作 switch_to.alert() 切换到提示框对象 switch_to.frame() 切换到不同的frame switch_to.default_content() 退出到默认frame switch_to.parent_frame() 退出到上一级frame 执行js脚本 execute_script() 执行js脚本 execute_async_script() 异步的执行js脚本 退出操作 quit() 关闭所有窗口退出浏览器 初始化好某浏览器的webdriver后使用get函数打开网页地址然后使用find_element返回元素对象WebElement或者find_elements方法返回元素对象WebElement的列表查找页面元素对象有了元素对象才能做接下来的一些操作比如输入文本/点击按钮等。 函数源代码如下适用selenium4.23.1版本 函数中的参数by表示定位元素的方式在 selenium.webdriver.common.by.By中定义如下 函数中的参数value表示参数by对应的值。 也就是说find_element函数可以通过以下8种方式进行元素定位 [id, xpath, link text, partial link text, name, tag name, class name, css selector] 举例使用Safari浏览器打开百度以id来定位搜索框的元素位置。 from selenium import webdriver driver webdriver.Safari()
打开一个网页
driver.get(https://www.baidu.com) driver.find_element(By.ID,kw) 举例使用Safari浏览器打开百度以name来定位搜索框的元素位置。 driver.find_element(By.NAME,wd) 举例使用Safari浏览器打开百度以class来定位搜索框的元素位置。 driver.find_element(By.CLASS_NAME,s_ipt) 举例使用Safari浏览器打开百度以Xpath来定位搜索框的元素位置。 driver.find_element(By.XPATH,//*[idkw]) 举例使用Safari浏览器打开百度以link text来定位新闻链接的元素位置。 driver.find_element(By.LINK_TEXT,新闻) 设置隐式等待时间implicitly_wait 测试代码 from selenium import webdriver driver webdriver.Safari() driver.implicitly_wait(5) 设置脚本等待时间set_script_timeout 测试代码 from selenium import webdriver driver webdriver.Safari() driver.set_script_timeout(5) 设置页面加载等待时间set_page_load_timeout 测试代码 from selenium import webdriver driver webdriver.Safari() driver.set_page_load_timeout(5) 获取所有设置的等待或者超时时间timeouts timeouts属性函数返回的是Timeouts类包含三个属性 测试代码 1设置等待和超时时间后通过timeouts属性函数读取这些设置的时间 from selenium import webdriver driver webdriver.Safari() driver.implicitly_wait(5) driver.set_script_timeout(5) driver.set_page_load_timeout(5) print(driver.timeouts.implicit_wait) print(driver.timeouts.page_load) print(driver.timeouts.script) 执行结果 5.0 5.0 5.0 2 设置timuouts属性中三个时间 先导入Timeouts类 from selenium.webdriver.common.timeouts import Timeouts 测试代码 from selenium import webdriver #初始化Timeouts类 并设置时间 timeouts_new Timeouts() timeouts_new.implicit_wait 4 timeouts_new.page_load 4 timeouts_new.script 4 #将属性timeouts设置为Timeouts对象 driver.timeouts timeouts_new #打印3个时间值 print(driver.timeouts.implicit_wait) print(driver.timeouts.page_load) print(driver.timeouts.script) 执行结果 4.0 4.0 4.0 网页的一些操作方法 先定义Safari浏览器的driver对象 from selenium import webdriver driver webdriver.Safari() 1打开传入的URL网页地址 driver.get(https://www.toutiao.com/) 2返回当前url print(driver.current_url) 3page_source 是一个属性方法返回当前打开页面的源代码 print(driver.page_source) 4refresh() 刷新当前页面。 driver.refresh() 5back()和forward() 浏览器的后退和前进操作。 driver.back() driver.forward() 6退出webdriver driver.quit() cookie操作方法 from selenium import webdriver 1获取所有cookie print(driver.get_cookies()) 2获取某个name值的cookie print(driver.get_cookie(ac_nonce)) 3删除某个name值的cookie driver.delete_cookie(ac_nonce) 4删除所有cookie driver.delete_all_cookies() 5添加一个cookie driver.add_cookie({name:nonce, value: 7421004976065267240}) 窗口操作方法 from selenium import webdriver 1获取窗口大小并设置窗口大小 #获取窗口大小 print(driver.get_window_size()) #设置大小 driver.set_window_size(1000,600) print(driver.get_window_size()) 2获取窗口坐标并设置窗口坐标 #获取坐标 print(driver.get_window_position()) #设置坐标 driver.set_window_position(20,30) print(driver.get_window_position()) 3获取窗口坐标和大小并设置窗口坐标和大小 #获取坐标和大小 print(driver.get_window_rect()) #设置坐标和大小 driver.set_window_rect(20,30,800,700) print(driver.get_window_rect()) 4窗口最大化/最小化/全屏 driver.minimize_window() driver.maximize_window() driver.fullscreen_window() 5关闭窗口 driver.close() 6切换窗口 通过driver.window_handles获取打开窗口的句柄列表然后通过driver.switch_to.window()切换不同的窗口 以百度网站举例打开新闻链接然后切换窗口 from selenium import webdriver from selenium.webdriver.common.by import By from time import sleep driver webdriver.Safari()
打开一个网页
driver.get(https://www.baidu.com) driver.maximize_window() sleep(2) #打开新闻链接 driver.find_element(By.LINK_TEXT,新闻).click() #打印文件句柄 print(driver.window_handles) #循环切换窗口 while True:for i in driver.window_handles:sleep(1)driver.switch_to.window(i) 程序执行后会打开新闻然后来回切换两个窗口 共勉 东汉·班固《汉书·枚乘传》“泰山之管穿石单极之绠断干。水非石之钻索非木之锯渐靡使之然也。” —–指水滴不断地滴可以滴穿石头 —–比喻坚持不懈集细微的力量也能成就难能的功劳。 —-感谢读者的阅读和学习谢谢大家。
相关文章
-
购物网站开发用什么软件wp大学wordpress建站流程
购物网站开发用什么软件wp大学wordpress建站流程
- 技术栈
- 2026年04月20日
-
购物网站开发什么是网站开发wordpress 固定链接翻译
购物网站开发什么是网站开发wordpress 固定链接翻译
- 技术栈
- 2026年04月20日
-
购物网站开发软件网页特效源码网站
购物网站开发软件网页特效源码网站
- 技术栈
- 2026年04月20日
-
购物网站排名第一wordpress 页面标签
购物网站排名第一wordpress 页面标签
- 技术栈
- 2026年04月20日
-
购物网站排名第一的有哪些代做网站微信号
购物网站排名第一的有哪些代做网站微信号
- 技术栈
- 2026年04月20日
-
购物网站如何建设余姚网络公司哪家好
购物网站如何建设余姚网络公司哪家好
- 技术栈
- 2026年04月20日
