为了账号安全,请及时绑定邮箱和手机立即绑定

在python selenium中从HTML表格中提取链接文本

在python selenium中从HTML表格中提取链接文本

蛊毒传说 2021-09-11 16:30:09
我是硒的新手。我想从网站的以下 HTML 代码中提取 HTML 表中的链接文本。对于上面的代码片段,我在 selenium 中编写了以下代码:from selenium import webdriverfrom selenium.webdriver.common.by import Byoption = webdriver.ChromeOptions()option.add_argument("--incognito")option.add_argument("--start-maximized")chrome_path = r"C:\Users\singh\Downloads\chromedriver_win32\chromedriver.exe"browser = webdriver.Chrome(chrome_path, options=option)browser.get("https://timesofindia.indiatimes.com/archive/year-2010,month-1.cms")browser.implicitly_wait(10)num = []numbers = browser.find_elements(By.XPATH, "//table[@class = 'calender']/tbody/tr/td/a[@href]")for n in numbers:    number = n.text    num.append(number)预期输出:num = ['S', 'M', 'T', 'W', 'T', 'F', 'S', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', '30', '31']该程序将num和numbers列表作为空列表返回。我知道在代码中输入的 XPath 中有些地方不正确。但我无法弄清楚错误是什么。操作系统:Windows 10 x64Python IDE:Anaconda SpyderPython 版本:3.6
查看完整描述

1 回答

?
慕标5832272

TA贡献1966条经验 获得超4个赞

有两个问题


1.calender是id,不是class。


2.为了得到href你需要使用的get_attribute,而不是文本


numbers = browser.find_elements(By.XPATH, '//table[@id="calender"]//a')


for n in numbers:

    number = n.get_attribute('href')

    num.append(number)


查看完整回答
反对 回复 2021-09-11
  • 1 回答
  • 0 关注
  • 266 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信