【发布时间】:2021-07-07 21:04:08
【问题描述】:
我只想为我的不准确问题道歉。所以我的问题是我编写了一个 Python 脚本来打开一个音乐数据库网站,然后它会查找某个艺术家(在我的例子中是“cro”)。之后,会出现一个表,我想从中提取数据。我的代码如下所示:
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time
PATH = "C:\Program Files (x86)\chromedriver.exe"
driver = webdriver.Chrome(PATH)
driver.get("https://repsearch.ppluk.com/")
print(driver.title)
search = driver.find_element_by_name("pt1:rec_band_artist")
search.send_keys("cro")
search.send_keys(Keys.RETURN)
try:
table = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "pt1:searchResultsTable::db"))
)
except:
driver.quit()
print(table.text)
driver.quit()
input()
表格中有多个列,例如“艺术家姓名”、“录音标题”、“发行日期”等。如果“发布日期”的值为“2021”,我希望程序仅打印一行。录音标题“ALLES DOPE”有这个值,所以程序应该只打印“ALLES DOPE”所在行的信息。
In the following, you can see how the table looks like
您可能已经猜到了,我是 python 的菜鸟。我几周前才开始查找这个问题,但找不到任何有用的帮助。所以提前感谢
【问题讨论】:
标签: python selenium html-table