我想用硒點擊一些鏈接從網頁的來源。這是我走到這一步:硒不能識別href超文本
import selenium, time
import html5lib
from bs4 import BeautifulSoup
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys
pg_src = br.page_source.encode("utf")
soup = BeautifulSoup(pg_src)
br = webdriver.Chrome()
url = "http://somewikipage.org"
br.get(url)
lnkLst = soup.find_all("a", href=re.compile(",_California") # this builds a list with everything in the a href tag
nuLst = []
for i in lnkLst:
nuLst.append(i.get('href')) #this removes all the unclickable text from the a href tag
for i in nuLst:
br.find_element_by_link_text(i).click()
這將導致以下錯誤:
AttributeError: 'list' object has no attribute 'click'
我打印出來nuLst和每個項目完全HREF標記內的超鏈接匹配。在使用find_element_by_xpath之前,我做了類似的事情,但我不確定如何爲這組hrefs隔離css選擇器,而無需調用頁面上的所有其他hrefs。
我想錯誤來自:br.find_element_by_link_text(i),參數:我是鏈接的url,而不是鏈接的文本。所以你應該將鏈接文本追加到nuLst而不是href:nuLst.append(i.get('href')) – yong