当前位置: 首页 > 面试题库 >

使用python访问Selenium Web元素

樊飞飙
2023-03-14
问题内容

我敢肯定,这已经在某个地方得到了回答,因为这是一个非常基本的问题-但是,对于我的一生,我无法在网上找到答案。我觉得自己是个白痴,但是我不得不问,这是:

我正在编写一个python代码,该代码将生成域中所有页面地址的列表。这是使用selenium2完成的-当我尝试访问由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的特定于selenium的对象。但是,我找不到任何可以提供链接的WebElement属性-
事实上,我找不到在python中访问的WebElement属性的任何示例(至少不是我可以重现的方式)

我真的很感谢大家能给我的任何帮助

真诚的新秀


问题答案:

我熟悉python的硒API,但您可能可以使用get_attribute(attributename)方法接收链接。所以应该是这样的:

linkstr = ""
for link in Listlinker: 
  linkstr = link.get_attribute("href")

  if linkstr in Domenesider:
    pass
  elif str(HovedDomene) in linkstr:
    Domenesider.append(side)


 类似资料:
  • 问题内容: 我有一个网页,其中iframe内有一个texarea。我需要从其子页面javascript读取此textarea的值。目前,通过在javascript中使用,我能够提取父页面中除iframe中的textarea之外的所有控件的值。 父页面中的框架ID和框架名称在运行时会更改,因此我们无法使用框架ID /框架名称作为参考。 问题答案: 如果您有HTML 和JavaScript 现在是对文

  • 问题内容: 我搞砸了SVG,希望能在Illustrator中创建SVG文件并使用Javascript访问元素。 这是Illustrator推出的SVG文件(它似乎也向我删除的文件的开头添加了一些垃圾) 正如您可能看到的那样,每个元素都有一个ID,我希望能够使用Javascript访问单个元素,以便我可以更改Fill属性并响应诸如click之类的事件。 HTML是基本的 我想这真的是两个问题。 与使

  • 基本上,我想访问一个出现在打印预览弹出窗口中的按钮,这是一个阴影dom元素。我尝试了一些我在stackoverflow周围找到的解决方案,但是它们不起作用,就像我试图构建的当前代码一样,它是: 检查元素打印

  • 问题内容: 我正在尝试在以下网站中输入用户名和密码:https : //www.thegreatcoursesplus.com/sign- in 这给出了以下异常: 然后我尝试使用Java脚本: 没有错误,但没有文本发送到“电子邮件地址”字段。 有人可以指导我以正确的方式输入电子邮件地址,密码,然后单击“登录”。 感谢您的协助 问题答案: 此错误消息… …表示所需的 元素 在 WebDriver

  • shadowdom结构:在上面的shadowdom结构中,我们可以在chrome中使用selenium和javascript访问各个元素,如下所示: 在Firefox中://div[@class='Style-Sconk-tabs'而不是(@隐藏)]//div/span[包含(text(),'AttrName')]/.../前驱兄弟姐妹::div/puch-icon-按钮[1]/铁图标[1] 在C

  • 问题内容: 我在HDFS中有一些数据,我需要使用python访问该数据,有人可以告诉我如何使用python从蜂巢访问数据吗? 问题答案: 您可以使用hive库从python访问hive,因为要从hive导入ThriveHive导入hive类 下面的例子