Python自动化轮播控件中元素not clickable报错处理

问题:

想要进行依次点击专题栏中的链接. 下方是一个轮播条.
在点击A中第二篇文章时, 报错 . is not clickable at point (481, 343). Other element would re
ceive the click:
在这里插入图片描述

思路1:

判断为轮播抢走了浏览器焦点. 导致点击失败. 获取一个固定的元素, 这里获取了专题栏的title元素. 在每次点击文章前, 先执行下点击专题栏标题操作, 抢回焦点. 问题解决.

思路2:

禁用JS

option = webdriver.ChromeOptions()
prefs = {'profile.managed_default_content_settings.javascript': 2}
option.add_experimental_option('prefs', prefs)
context.driver = webdriver.Chrome(chrome_options=option)

以上方法都无法保证解决问题, 只能根据具体问题分析寻找方案

最终解决方案:

在这里插入图片描述
比如想要依次点击所有新闻栏中的文章.
1.点击新闻栏title
2.获取新闻栏下所有文章a标签元素
3.把a标签列表抽取成包含这些元素href地址的列表
4.测试href列表

    articles = pg_homepage.get_law_articles
    article_url_list = [article.get_attribute('href') for article in articles]
    article_name_list = [article.get_attribute('titletip') for article in articles]
    list_count = [x for x in range(len(article_url_list))]
    for i in list_count:
        pg_homepage.visit(article_url_list[i])
        pg_homepage.verify_click_article(article_name_list[i])
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值