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

在python中使用硒获取所有href链接

晋涛
2023-03-14
问题内容

我正在用Python练习Selenium,我想使用Selenium获取网页上的所有链接。

例如,我想要http://psychoticelites.com/href=上所有<a>标签的属性中的所有链接。

我写了一个脚本,它正在工作。但是,它给了我对象地址。我尝试使用id标签来获取值,但是,它不起作用。

我当前的脚本:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys


driver = webdriver.Firefox()
driver.get("http://psychoticelites.com/")

assert "Psychotic" in driver.title

continue_link = driver.find_element_by_tag_name('a')
elem = driver.find_elements_by_xpath("//*[@href]")
#x = str(continue_link)
#print(continue_link)
print(elem)

问题答案:

好吧,您只需要遍历列表即可:

elems = driver.find_elements_by_xpath("//a[@href]")
for elem in elems:
    print(elem.get_attribute("href"))

find_elements_by_*返回元素列表(注意“
elements”的拼写)。遍历列表,获取每个元素,然后从中获取所需的所需属性值(在本例中为href)。



 类似资料:
  • 问题内容: 我正在用Python练习Selenium,我想使用Selenium获取网页上的所有链接。 例如,我想要http://psychoticelites.com/上所有标签的属性中的所有链接。 我写了一个脚本,它正在工作。但是,它给了我对象地址。我尝试使用标签来获取值,但是,它不起作用。 我当前的脚本: 问题答案: 好吧,您只需要遍历列表即可: 返回元素列表(注意“ elements”的拼写

  • 问题内容: 如何在此页面上获取此“ h2”标题的所有“ href”属性? 我尝试过的没有得到href的是: 这没有获得“ a”标签的链接。如果我在“ a”标签上找到了所有元素,它将返回页面上的每个href(这不是我想要的)。我只想返回上述标题,但能够获取其url“ href”属性。 问题答案: 这是从所有页面获取所有书籍的代码:

  • 我想用硒点击“?例如,在网站上你点击的按钮会重定向到href,但是当我使用selenium时,什么也没发生。我已经尝试了这么多迭代,也查找了类似的指南,但无济于事。

  • 我尝试了下面给出的代码,但每次运行代码时,都会有一些链接添加到missing。我想在一个列表中获取页面中的所有链接,这样我就可以使用切片来访问我想要的任何链接。 有没有办法在不遗漏任何元素的情况下获得所有元素。

  • 我试图解析我的大学网站,以获得一个新闻列表(标题+链接)从主要网站。然而,当我试图解析一个完整的网站时,我要查找的链接被嵌套在其他类、表等的深处。下面是我试图使用的代码: 但不管用。如果每一个链接都放在以下位置,那么是否有更好的方法获得所有这些链接的href值和标题: 也许是某种循环,它会迭代所有这些标记,并从中获取值? 感谢帮助:-)

  • 问题内容: import urllib2 到目前为止,一切都很好。 但是我只希望纯文本HTML中的href链接。我怎么解决这个问题? 问题答案: 尝试使用Beautifulsoup: 如果您只想要以开头的链接,则应使用: 在带有BS4的Python 3中,它应该是: