Selenium和Python无法点击href =“javascript:void(0);”用.click()

时间:2016-02-25 18:59:31

标签: javascript python selenium beautifulsoup

我一直试图点击href =“javascript:void(0);”在页面上。

我的问题是我无法使用selenium选择它,我的最终目标是点击一个。页面已完全加载,这就是页面上的所有链接都具有href。

我的代码是:

a = soup.find_all('a')
for names in a:
    try:
        print (names['href'])
        if names['href'] == "javascript:void(0);":
            print "IM IN HUR"
            names.click()
            break
    except:
        continue

但是“name.click()”语句永远不会起作用。我没有找到任何方法来点击javascript:void(0)。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

您必须使用Selenium WebDriver与Web浏览器进行交互。您的变量names是Beautiful Soup的一个对象,它是一个用于解析HTML / XML的Python包,它无法与Web浏览器交互。请尝试以下代码:

aElements = browser.find_elements_by_tag_name("a")
for name in aElements:
    if(name.get_attribute("href") is not None and "javascript:void" in name.get_attribute("href")):
        print("IM IN HUR")
        name.click()
        break