【发布时间】:2015-11-23 05:48:12
【问题描述】:
我正在尝试创建一个可以玩 2048 游戏的 AI。我的问题是我无法获得我想要的格式的电路板。
我的代码(获取板子):
def get_board():
board = {"1": '-',"2": '-', "3": '-',"4": '-',
"5": '-',"6": '-', "7": '-',"8": '-',
"9": '-',"10": '-', "11": '-',"12": '-',
"13": '-',"14": '-', "15": '-',"16": '-'}
tiles = driver.find_elements_by_class_name("tile")
for tl in tiles:
til = tl.get_attribute("class")
tile = til.split()
if "tile-position-1-1" in tile:
value = driver.find_elements_by_xpath("/html/body/div/div[3]/div[3]/div[1]/div")
board["1"] = value
elif "tile-position-2-1" in tile:
value = driver.find_elements_by_xpath("/html/body/div/div[3]/div[3]/div[2]/div")
board["2"] = value
elif "tile-position-3-1" in tile:
value = driver.find_elements_by_xpath("/html/body/div/div[3]/div[3]/div[2]/div")
board["3"] = value
return board
我希望它把图块放在字典的正确位置,例如:
如果 tile 1-1 是 4 那么它应该做board['1'] = "4"
有什么想法可以做到吗?
【问题讨论】:
-
列表不是比字典更适合吗?
-
不,因为人工智能的工作方式......
-
尝试将此问题重新表述为一个编程问题,并提供一个不起作用的最小示例。您是否对如何使用
selenium阅读网页内容感到困惑,或者对如何更新字典或在存储游戏板时寻找数据结构建议感到困惑? -
tile 1-1 是如何翻译成 ['1'] 的? 1-2会去哪里?和2-1?您需要将您提供的内容简化为您所要求的内容,通过提供一些代码表明您已经完成了一些工作,并解释为什么它不起作用。
-
1-1 就像绳索......这就是它在页面中的方式,但我希望它像 1-1 是 1,2-1 是 2,3-1 是 3,4- 1 是 4,然后 1-2 是 5,2-2 是 6.....4-4 是 16(问题是我在编程方面很新,这是我第一次使用 selenium,所以我不知道为什么它不起作用:/)
标签: python python-3.x selenium selenium-webdriver