python仿照别人功能时发现的一个问题,求大佬解答
求助各位大佬。我想知道图片中,Action(tpms["广告"]).click(Point(474,925)).sleep(2),是如何在调用click后继续使用.调用sleep的 click返回的值有sleep方法就可以接着调用 pj-Yang 发表于 2022-8-15 16:53
click返回的值有sleep方法就可以接着调用
- 好像不是这样吧
- 做个实验,验证一下:
```py
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.action_chains import ActionChains
browser = webdriver.Chrome()
browser.get('https://www.baidu.com/')
a = ActionChains(browser).click(browser.find_element(By.ID, 'su'))
print(type(a))
```
- 类型是:`<class 'selenium.webdriver.common.action_chains.ActionChains'>`,没有使用 `perform()` 方法之前,都是 `ActionChains` 对象,但是 `ActionChains` 并没有 sleep() 本帖最后由 pj-Yang 于 2022-8-16 09:09 编辑
MyModHeaven 发表于 2022-8-15 21:33
- 好像不是这样吧
- 做个实验,验证一下:
Action(tpms["广告"]).click(Point(474,925)).sleep(2)
#与下面的是等同的
a = Action(tpms["广告"]).click(Point(474,925))
a.sleep(2)
这是楼主代码的情况,你的代码如果能
ActionChains(browser).click(browser.find_element(By.ID, 'su')).sleep(2)
就能
a = ActionChains(browser).click(browser.find_element(By.ID, 'su'))
a.sleep(2)
pj-Yang 发表于 2022-8-16 09:07
Action(tpms["广告"]).click(Point(474,925)).sleep(2)
#与下面的是等同的
感谢大佬回复,看了你的回复,有点启发,回去翻了一下,知道该怎么弄了,非常感谢,发现只要return self就可以了,谢谢 MyModHeaven 发表于 2022-8-15 21:33
- 好像不是这样吧
- 做个实验,验证一下:
谢谢大佬回复,我已经找到方法了,十分感谢
页:
[1]