当前位置: 首页 > news >正文

咋做抽奖网站北京网络推广外包公司排行

咋做抽奖网站,北京网络推广外包公司排行,抖音代运营考核标准,关键词优化价格文章目录 1、执行driver webdriver.Chrome()后很久才打开浏览器2、浏览器多元素定位 $x(‘xpath语法’)3、打开浏览器driver.get("网址")执行了很久才开始定位元素:等待(1)driver.set_page_load_timeout(t)(2&#xff…

文章目录

  • 1、执行driver = webdriver.Chrome()后很久才打开浏览器
  • 2、浏览器多元素定位 $x(‘xpath语法’)
  • 3、打开浏览器driver.get("网址")执行了很久才开始定位元素:等待
    • (1)driver.set_page_load_timeout(t)
    • (2)WebDriverWait()
  • 4、异常处理
    • 处理异常 try/except
    • 断言assert

1、执行driver = webdriver.Chrome()后很久才打开浏览器

尚未解决,一会很快打开一会很慢打开

2、浏览器多元素定位 $x(‘xpath语法’)

console里面调试xpath 定位的语法是 :$x()
在console里面通过 $x(‘xpath语法’) 可以确定 xpath 语法是否写正确,方便报错时排查问题

# //*[@id="leftcolumn"]/a[1]
# //*[@id="leftcolumn"]/a[2]
# //*[@id="leftcolumn"]/a[3]
# console里面调试xpath 定位的语法是 :$x()   ;
# 在console里面通过 $x(‘xpath语法’) 可以确定 xpath 语法是否写正确,方便报错时排查问题
# $x('//*[@id="leftcolumn"]/a')   (74)

请添加图片描述

3、打开浏览器driver.get(“网址”)执行了很久才开始定位元素:等待

selenium元素操作等方法是需要等待页面所有元素完全加载完成后才开始执行的,所以在页面未完成加载前,代码会一直等待页面加载不继续执行。

(1)driver.set_page_load_timeout(t)

解决办法参考资料:
【selenium】解决页面加载时间过长问题
解决 selenium 加载网页阻塞的问题

  • 设置等待时间:driver.set_page_load_timeout(0.1)
  • 超时即抛出异常:try: except TimeoutException:
  • 超时后执行Javascript停止页面加载:driver.execute_script(‘window.stop()’)
# 设置WebDriver的页面加载时间(set_page_load_timeout),
# set_page_load_timeout(time) 方法可以设置页面的加载超时时间
# 在页面加载超出设置时间时会报错,Timed out receiving message from renderer: time
driver.set_page_load_timeout(5)  # 设置页面加载时间miao
PrintTime.NowTime("控制浏览器,访问页面")
start = time.time()
try:driver.get("https://www.runoob.com/html/html-tutorial.html")  # 控制测览器,访问
except TimeoutException:# 超时后执行Javascript停止页面加载PrintTime.NowTime("Time Out")driver.execute_script('window.stop()')
# 显示等待:WebDriverWait()
WebDriverWait(driver, 5, 0.1).until(lambda x: x.find_element_by_id('kw'))
print('the page is loaded')
end = time.time()
# 计算页面加载时间
print(end - start)
# 设置页面加载时间的方式只适用于使用 get() 方式打开网页,如果是通过操作进行跳转的页面不适用

(2)WebDriverWait()

解决办法参考资料:
webdriver中的等待——主要讲解WebDriverWait()

- 显示等待:WebDriverWait()

WebDriverWait(driver,timeout,poll_frequency=0.5,ignored_exceptions=None)

driver:浏览器驱动
timeout:最长超时时间,默认以秒为单位
poll_frequency:检测的间隔步长,默认为0.5s
ignored_exceptions:超时后的抛出的异常信息,默认抛出NoSuchElementExeception异常。

- 与until()或者until_not()方法结合使用

WebDriverWait(driver,10).until(method,message="")

在设置时间(10s)内,等待后面的条件发生。如果超过设置时间未发生,则抛出异常。在等待期间,每隔一定时间(默认0.5秒),调用until或until_not里的方法,直到它返回True或False.

- 匿名函数:lambda

# lambda 形式参数 : 函数表达式
sum_1 = lambda arg1, arg2: arg1 + arg2
# lambda是一个表达式,可以被命名,其中arg1, arg2是形式参数,arg1 + arg2 函数表达式
sum_1(1,2)
# 返回结果 3

等待时间为10秒,每0.5秒检查一次,然后使用匿名函数等待直到找到id为’kw’的元素

# 设置等待
wait = WebDriverWait(driver,10,0.5)
# 使用匿名函数
# lambda x: x2 表示一个接受参数x并返回x2的匿名函数
wait.until(lambda diver:driver.find_element_by_id('kw'))

4、异常处理

处理异常 try/except

try:runoob()
except AssertionError as error:print(error)
else:try:with open('file.log') as file:read_data = file.read()except FileNotFoundError as fnf_error:print(fnf_error)
finally:print('这句话,无论异常是否发生都会执行。')

在这里插入图片描述

  • 首先,执行 try 子句(在关键字 try 和关键字 except 之间的语句)。
  • 如果没有异常发生,忽略 except 子句,try 子句执行后结束。
  • 如果在执行 try 子句的过程中发生了异常,那么 try 子句余下的部分将被忽略。如果异常的类型和 except 之后的名称相符,那么对应的 except 子句将被执行。
  • 如果一个异常没有与任何的 except 匹配,那么这个异常将会传递给上层的 try 中。
  • 一个 try 语句可能包含多个except子句,分别来处理不同的特定的异常。最多只有一个分支会被执行。
  • 一个except子句可以同时处理多个异常,这些异常将被放在一个括号里成为一个元组 except (RuntimeError, TypeError, NameError):
  • 可选的 else 子句,如果使用这个子句,那么必须放在所有的 except 子句之后。else 子句将在 try 子句没有发生任何异常的时候执行
  • 异常处理并不仅仅处理那些直接发生在 try 子句中的异常,而且还能处理子句中调用的函数(甚至间接调用的函数)里抛出的异常。
  • try-finally 语句无论是否发生异常都将执行最后的代码。

断言assert

  • assert(断言)用于判断一个表达式,在表达式条件为 false 的时候触发异常。
  • 断言可以在条件不满足程序运行的情况下直接返回错误,而不必等待程序运行后出现崩溃的情况。
    在这里插入图片描述
    判断当前系统是否为 Linux,如果不满足条件则直接触发异常,不必执行接下来的代码:
import sys
assert ('linux' in sys.platform), "该代码只能在 Linux 下执行"# 接下来要执行的代码
http://www.mnyf.cn/news/13533.html

相关文章:

  • 12306网站做的好垃圾郑州seo公司排名
  • 宝安做棋牌网站建设有哪些公司大数据营销的案例
  • 标准版网站制作百度指数网址是什么
  • 京东优惠券网站怎么做拉新推广怎么找渠道
  • 网站怎么做成中英文版合肥头条今日头条新闻最新消息
  • 新手学做网站 pdf 下载泰州网站优化公司
  • 商场设计理念盐城seo网站优化软件
  • 临清网站制作公司百度快速优化排名软件
  • 怎样创建设计公司网站品牌战略
  • 地推任务网windows优化大师要钱
  • 网上做网站赚钱吗百度推广登录官网入口
  • 建设校园网站自己如何免费做网站
  • 广州专业网站制作公司厦门百度seo公司
  • 扬中网站推广价格windows优化大师免费版
  • 做网站怎么还用身份证危机公关处理
  • 学做网站教学百度网盘设计外包网站
  • 博山专业网站优化哪家好百度小程序优化排名
  • 企业网站可以做淘宝客吗 今日头条
  • 深圳最新疫情政策seopc流量排行榜企业
  • 哈尔滨网页设计师深圳关键词优化报价
  • 青海省公路建设管理局网站赣州seo外包怎么收费
  • 做网站注册页面搜索引擎的网站
  • 上海网站建设公司怎么分辨好坏小吃培训去哪里学最好
  • 怎么用手机黑网站建网站怎么赚钱
  • 做行程的网站怎么找拉新推广平台
  • 中山市智能h5网站建设公司营销中存在的问题及对策
  • 石家庄网站制作找谁网络促销
  • 程序员做的简单的网站自媒体营销
  • 用js做的网站代码吗龙岗网站制作
  • wordpress博客主题汉化seo指的是搜索引擎