范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

python包之selenium自动化使用教程

  一、安装pip install Selenium
  二、初始化浏览器Chrome 是初始化谷歌浏览器   Firefox 是初始化火狐浏览器   Edge 是初始化IE浏览器   PhantomJS 是一个无界面浏览器。   from selenium import webdriver   driver = webdriver.Chrome()
  三、设置浏览器大小maximize_window 最大化窗口   set_window_size 自定义窗口大小   from selenium import webdriver   driver = webdriver.Chrome() driver.maximize_window()
  四、访问页面from selenium import webdriver   driver = webdriver.Chrome() driver.get("https://www.baidu.com")
  五、定位元素通过元素id定位   定位一个元素:find_element_by_id()   定位多个元素:find_elements_by_id()   通过元素name定位   定位一个元素:find_element_by_name()   定位多个元素:find_elements_by_name()   通过xpath表达式定位   定位一个元素:find_element_by_xpath()   定位多个元素:find_elements_by_xpath()   通过完整超链接定位   定位一个元素:find_element_by_link_text()   定位多个元素:find_elements_by_link_text()   通过部分链接定位   定位一个元素:find_element_by_partial_link_text()   定位多个元素:find_elements_by_partial_link_text()   通过标签定位   定位一个元素:find_element_by_tag_name()   定位多个元素:find_elements_by_tag_name()   通过类名进行定位   定位一个元素:find_element_by_class_name()   定位多个元素:find_elements_by_class_name()   通过css选择器进行定位   定位一个元素:find_element_by_css_selector()   定位多个元素:find_elements_by_css_selector()   # 找到百度首页的输入框 from selenium import webdriver   driver = webdriver.Chrome() driver.get("https://www.baidu.com") driver.find_element_by_id("kw")
  六、定位元素另一种写法需引入By模块   from selenium import webdriver from selenium.webdriver.common.by import By   driver = webdriver.Chrome() driver.get("https://www.baidu.com") driver.find_element(By.ID, "kw")
  七、元素的交互点击某个元素:click()   模拟输入:send_keys()   清除操作:clear()   提交表单:submit()   获取元素的属性值:get_attribute(name)   获取元素的位置:location   获取元素的文本值:text   获取元素的大小:size   获取元素的id值:id   获取元素的标签名:tag_name   #  在百度输入框中输入我是autofelix,并点击搜索按钮 from selenium import webdriver   driver = webdriver.Chrome() driver.get("https://www.baidu.com") driver.find_element_by_id("kw").send_keys("我是autofelix") driver.find_element_by_id("su").click()
  八、执行JSfrom selenium import webdriver   driver = webdriver.Chrome() driver.maximize_window()   driver.get("https://www.baidu.com")   js_sql = """     document.getElementById("kw").value = "我是autofelix" """ driver.execute_script(js_sql)
  九、操作Frame网页中frame的话,需要执行切入切出操作   switch_to.from(子iframe的id名称) 切入   switch_to.parent_frame(父iframe的id名称) 切出   from selenium import webdriver   driver = webdriver.Chrome() driver.maximize_window()   driver.get("https://www.baidu.com")   //这个网址并没有iframe,我臆测有,你们看看就行 driver.switch_to.frame("我臆测出来的iframe")
  十、cookie操作删除当前页面所有cookies:delete_all_cookies()   获取指定cookie值:get_cookie(name)   获取当前页面所有cookies值:get_cookies()   设置cookie值:add_cookie()   from selenium import webdriver   driver = webdriver.Chrome() driver.maximize_window()   driver.get("https://www.baidu.com")   driver.delete_all_cookies() driver.add_cookie({"name": "name", "domain": ".baidu.com", "value": "autofelix"})
  十一、选项卡管理保存所有选项卡的元组:window_handles   切换选项卡:switch_to.window()   from selenium import webdriver   driver = webdriver.Chrome() driver.maximize_window()   driver.get("https://www.baidu.com") driver.get("https://www.taobao.com")   driver.switch_to.window(driver.window_handles[0]) driver.switch_to.window(driver.window_handles[1])
  十二、鼠标事件鼠标事件需要引入ActionChains模块   鼠标右击:move_to_element(above)   鼠标双击:double_click()   左键按住拖动:drag_and_drop()   动作存储:perform()   # 滑动滑块验证码 from selenium import webdriver from selenium.webdriver import ActionChains from selenium.webdriver.common.by import By from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC   # 初始化谷歌浏览器 driver = webdriver.Chrome()   # 最大化窗口 driver.maximize_window()   # 打开头条登陆网址 driver.get("https://sso.toutiao.com")   # 等待某个元素是否出现 WebDriverWait(self.driver, 10).until(     EC.text_to_be_present_in_element((By.XPATH, "//*[@id="mobile-code-get"]/span"), u"发送") )   # 实例化鼠标操作 action = ActionChains(self.driver)   # 按住滑块 action.click_and_hold(self.driver.find_element_by_xpath("//*[@id="captcha_container"]")).perform()   # 将滑块移动x的距离 action.move_by_offset(xoffset=x, yoffset=0).perform()   # 释放滑块 action.release().perform()
  十三、等待隐氏等待:如果到一定时间,指定的元素还没有出现,进程不会阻塞,但是到指定时间还没有找到,就会抛出异常   显示等待:如果在一定时间内,指定的元素没有出现,进程会阻塞在这里,如果到指定时间还没有找到,就会抛出异常   # 隐氏等待 from selenium import webdriver   driver = webdriver.Chrome() driver.implicitly_wait(10)   driver.get("https://www.baidu.com")# 显示等待 from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC   driver = webdriver.Chrome() driver.implicitly_wait(10)   driver.get("https://www.baidu.com") WebDriverWait(driver, 10).until(     EC.presence_of_element_located((By.ID, "kw")) )
  十四、前进后退刷新后退:back()   前进:forward()   刷新:refresh()   from selenium import webdriver   driver = webdriver.Chrome() driver.get("https://www.baidu.com") driver.get("https://www.taobao.com") driver.get("https://www.jd.com")   driver.back() driver.forward() driver.refresh()
  十五、关闭浏览器关闭当前标签页:close()   关闭整个浏览器:quit()   from selenium import webdriver   driver = webdriver.Chrome() driver.get("https://www.baidu.com") //打开百度页面后,关闭整个浏览器 driver.quit()
  本文来自https://www.cnblogs.com/autofelix/p/16046382.html

小米mix4和华为P50相比较,选择哪款更好?如果非要在这两款手机中选择一款手机进行购买,小芳我个人会更加倾向于小米mix4这款手机会更多一些。我给到的理由有以下几点,大家不妨参考一下。原因一首先从性能角度来说,小米mix4这iQOO7小米11vivos10pro和OPPOReno6Pro之间,买哪款好?如果非要在这四款手机中选择一款手机进行购买,小芳我个人会更加推荐大家购买小米11这款手机会更多一些。我给到的理由有以下几点,大家不妨参考一下。理由一首先小米11这款手机的性能是四款真我GTneo和华为nove7se乐活版相比较,该如何选择?按照目前的市场行情来看,小芳是不建议大家购买2000以下的华为或者是荣耀手机的,因为这两个品牌的千元机的性价比是不高的而且整体配置都不是非常好。所以如果非要在这两款手机中选择一款手OPPOReno5和iQOOneo5相比较,该如何选择?如果单纯从一款手机的性价比角度来说,当然是选择iQOOneo5这款手机的性价比会更高。不过大家在实际购买手机的过程当中,因为每个人的需求是不一样的,那么做出的最终购机选择也是会有所现价2999元的小米10S是否值得入手?小芳入手小米10S这款手机也有2个多月的时间了,整体体验还是非常不错的。接下来小芳就和大家聊一聊这款手机的用机体验,希望能够帮助到大家。外观方面小米10S这款手机就是众多的小米手机小米mix4和iQOO7相比较,该如何选择?如果非要在这两款手机中选择一款手机进行购买,小芳我会毫不犹豫地选择小米mix4这款手机。不过大家在实际购买手机的过程当中,还是要将自身的需求以及两款手机的对比优点相结合,才能够做出红米k40Pro和iQOONeo5相比较,该如何选择?按照目前的市场行情来看,这两款手机的售价是差不多的。那么问题来了,如何从这两款手机中选择一款手机进行购买呢?小芳正好有这两款手机都使用了一段时间,就两款手机的综合体验来看,小芳个人iqooneo5和vivos10相比较,该如何选择?其实这两款手机是非常好选择的,因为两款手机的侧重点是不一样的。换句话来说,这两款手机的目标顾客人群是不一样的。vivos10这款手机主打的是轻薄机身以及出色的自拍能力,就小芳个人而小米CIVI和红米K40游戏增强版相比较,买哪款性价比高?其实这两款手机是非常好选择的,因为两款手机的侧重点是不一样的。小米CIVI这款手机主打的是轻薄机身以及良好的拍照能力,如果我大家是女性朋友完全是可以优先考虑小米CIVI这款手机的。小米11和华为mate30pro相比较,该如何选择?如果非要在这两款手机中选择一款手机进行购买,小芳我个人会更加倾向于小米11这款手机会更多一些。我给他的理由有以下几点,大家不妨参考一下。理由一首先小米11这款手机在价格方面是会比华一加9RT配置怎么样,有哪些亮点和不足?一加9RT全面测评来了2021年10月13日,一加公司如约给广大消费者带来了一款名为一加9RT的手机机型,就小芳个人而言,一加9RT这款手机相比较于一加9R而言,在性能设计影像和使用体验上都有了较大的提
为什么中国只发现了一个陨石坑?目前全球得到确认的陨石坑近200个,可中国偌大的地图上只有孤零零的一个独苗辽宁岫岩陨石坑,而且还是2010年才刚刚获得身份证的。中国领土占到了地球陆地总面积的115,为何仅仅拥有1同样都是陨石,为什么有些陨石表面光滑没有留下一点气印?同样都是陨石,不一样的物质成份,表面经地球大气层高温燃烧,熔融后形成的外观形态是不一样的。陨石(meteorite)也称陨星,是地球以外脱离原有运行轨道的宇宙流星或尘碎块飞快散落到美国服务器和香港服务器有啥区别?现在人们在选择服务器的时候总是有着共同人的特点,那就是选择困难症,是选择美国服务器好还是选择香港服务器好,其实选择哪个服务器还是要根据自己的情况来决定的,下面小编为大家介绍一下两种你见过胆子最大的人是什么样?女孩为把男神逆袭追到手,干出了令人惊叹的大胆之举。颠覆了我对弱小女子的印象。我见过胆子最大的是一个女孩子。确切地说,是一个刚大学毕业参加工作的女青工。有一年,我们单位新分来了一批大4k显示器多少寸比较好?4K显示器多少寸比较好?答4K显示器的尺寸常见的有15。6英寸27英寸(28英寸)31。5英寸(34英寸)43英寸50英寸55英寸65英寸等。至于选择多大尺寸,众说纷纭,这个要看购cb1100rs适合摩旅吗?谢邀!我是骠骑府!资深摩托车媒体编辑,点击头像查阅更多精彩答题,欢迎关注!这个问题问的是本田CB1100RS是否适合摩旅,骠骑府是这么看,基本上凡是摩托车都能摩旅,连小踏板都能骑到红米K40S真机照曝光骁龙888120W快充5000mAh,价格很有诚意小米这几年发布手机时间还是非常准确的,首先红米是不在国外市场举行发布会的,小米对外都是以xiaomi作为品牌。去年小米在国外发布了一款小米10T,这款手机在国内叫红米K30S,虽然17点oppo高管突然发文,刘作虎亲自为鸿蒙点赞,网友张老板大气一加是一个比较小众的手机品牌,但是凭借着老板刘作虎对产品不将就的态度,这个品牌的手机做工品质都很不错,这也让它获得了很多人的追捧,有了很好的口碑,今年的一加9Pro选择了跟哈苏联名三星和国产品牌将在2021年第三季度推出可折叠智能手机三星和其他某些国产智能手机品牌显然正在加紧准备在今年下半年推出其新的可折叠智能手机产品。其中包括小米,OPPOvivo和魅族等,它们将可能在今年第三季度推出可折叠设备。根据外媒DiARVRMR赛道打响,PicoHTC创维影创等十多款产品已上新XR扩展现实是2020年科技互联网领域的一大热门话题,它包含了VR虚拟现实AR增强现实和MR混合现实等概念。针对这一领域,高通结合在5G和AI领域的创新以及业界领先的XR技术,推出2G时代销量达到巅峰,外观漂亮功能强大的山寨手机为何消失了?在21世纪初,手机开始走进我们的日常生活中,无论是富裕的家庭还是普通的家庭,都能拥有一部手机,在那个时候,山寨手机非常流行,尤其是在20002010年的2G互联网时代,巅峰时期的山