【发布时间】:2011-12-28 15:27:06
【问题描述】:
我确信这已经在某个地方得到了解答,因为这是一个非常基本的问题 - 但是,我终其一生都无法在网络上找到答案。我觉得自己像个白痴,但我不得不问,这里是:
我正在编写一个 python 代码,它将生成一个域上所有页面地址的列表。这是使用 selenium 2 完成的 - 当我尝试访问 selenium 生成的所有链接的列表时会出现问题。
这是我目前所拥有的:
from selenium import webdriver
import time
HovedDomene = 'http://www.example.com'
Listlinker = []
Domenesider = []
Domenesider.append(HovedDomene)
driver = webdriver.Firefox()
for side in Domenesider:
driver.get(side)
time.sleep(10)
Listlinker = driver.find_elements_by_xpath("//a")
for link in Listlinker:
if link in Domenesider:
pass
elif str(HovedDomene) in str(link):
Domenesider.append(side)
print(Domenesider)
driver.close()
Listlinker 变量不包含在页面上找到的链接 - 而是列表包含(我在这里猜测)称为 WebElements 的硒特定对象。但是,我找不到任何可以为我提供链接的 WebElement 属性 - 事实上,我找不到任何在 python 中访问的 WebElement 属性示例(至少不能以我可以重现的方式)
非常感谢大家能给我的任何帮助
真诚的 菜鸟
【问题讨论】:
-
我第一次找不到 selenium 文档,而今天,我遇到了同样的问题(必须返回我的日志才能找到该页面)。我猜其他人可能有同样的问题,所以我决定在这里发布link,为了我和其他阅读本文的人。
-
行 Listlinker = driver.find_elements_by_xpath("//a") 将生成一个不可迭代的 webdriver 对象。接下来如何在代码中使用 for 对其进行迭代?