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

第一次使用python的selenium解锁游戏

最近解锁python的多种玩法,对这门语言的深入更加有兴趣了;
有的使用起来,发现并没有那么难,只不过对它的用法没有那么熟练;
有的并不简单,充满挑战~

一起来玩玩游戏,https://www.zhaosecha.com
比较下是你厉害,还是你的代码厉害吧!

第一次使用python的selenium解锁游戏,第1张
游戏如上
使用代码闯关游戏
"""
__title__  = Yx.py
__Time__   = 2022/4/2019:18
__Author__ = 小樱桃
__Blog__   = https://www.jianshu.com/u/71ff901eeee2
__公众号__ = 软件测试开发修炼
"""
from selenium import webdriver
import time


driver=webdriver.Chrome(r'D:\chromedriver.exe')
driver.get("https://www.zhaosecha.com")

time.sleep(2)

driver.find_element_by_class_name("play-btn").click() # 开始按钮

while True:

    all = driver.find_elements_by_xpath('//div[@id="box"]/span') #获取所有方块

    for i in range(len(all)):
        if all[i].get_attribute('style') != all[i+1].get_attribute('style'):
            #特殊方块存在其一
            try:
                if all[i].get_attribute('style') != all[i+2].get_attribute('style'): # 那么确定i是特殊点
                    all[i].click()
                    break
                else:
                    #确定i+1是特殊点
                    all[i+1].click()
                    break
            except:
                #如果报错,说明已经比对到最后俩个方块。而前面的如果已经比对过,那说明应该不是特殊的。否则已经被比出来了
                all[i+1].click() #所以确定是最后一个特殊方块。
                break

    time.sleep(0.5)
第一次使用python的selenium解锁游戏,第2张
闯关等级结果

可以继续改编代码,提高游戏等级哦~

from selenium import webdriver
import time


driver=webdriver.Chrome(r'D:\chromedriver.exe')
driver.get("https://www.zhaosecha.com")

time.sleep(2)

driver.find_element_by_class_name("play-btn").click() # 开始按钮
#print(driver.find_element_by_class_name("play-btn"))

while True:

    all = driver.find_elements_by_xpath('//div[@id="box"]/span') #获取所有方块


    a = all[0].get_attribute("style")
    #print(a)
    b = all[1].get_attribute("style")
    c = all[2].get_attribute("style")

    # 判断正确rgb值是多少
    if a == b or a == c:
        #print(driver.find_elements_by_xpath('//div[@id="box"]/span[@style!="%s"]' % a))
        driver.find_elements_by_xpath('//div[@id="box"]/span[@style!="%s"]' % a)[0].click()
    else:
        all[0].click()

    time.sleep(0.5)

https://www.xamrdz.com/web/2gk1876787.html

相关文章: