Selenium定位之tr/td表格数据获取

获取tr/td表格中的所有内容,思路如下:

1.首先或者到所有的tr行;

2.遍历行,对每个td列定位,并获取对应的text

3.利用list 保存text 并返回text

   def get_dept_list(self):
        row=self.driver.find_elements_by_tag_name('tr')
        list=[]
        for i in row:
            j=i.find_elements_by_tag_name('td')
            for item in j:
                text=item.text
                list.append(text)
        logging.info('返回的列表数据是{0}'.format(list))
        return list

可以根据自己的需要自行补充log和异常处理。

 

 

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
使用 Selenium 爬取 CSS 框架中的表格数据需要以下步骤: 1. 打开网页并定位到包含表格的元素,可以使用 `driver.get(url)` 方法打开网页,然后使用 `driver.find_element_by_css_selector(css_selector)` 或其他定位方法获取包含表格的元素。 2. 获取表格的行和列数,可以使用 `element.find_elements_by_css_selector(css_selector)` 或其他定位方法获取表格中的所有行和列。 3. 遍历每一行和每一列,通过 `row.find_elements_by_tag_name('td')` 或其他定位方法获取每一行中的所有单元格,再通过 `cell.text` 获取单元格的文本内容。 4. 将获取到的数据存储到列表或字典中,根据需要进行进一步处理。 下面是一个示例代码,爬取了 Bootstrap 网站中的表格数据: ```python from selenium import webdriver # 打开网页 driver = webdriver.Chrome() driver.get('https://getbootstrap.com/docs/5.0/content/tables/') # 定位表格元素 table = driver.find_element_by_class_name('table') # 获取行和列数 rows = table.find_elements_by_tag_name('tr') cols = rows[0].find_elements_by_tag_name('th') # 遍历每一行和每一列,获取单元格数据 data = [] for i, row in enumerate(rows): if i == 0: continue # 跳过表头行 row_data = {} cells = row.find_elements_by_tag_name('td') for j, cell in enumerate(cells): col_name = cols[j].text row_data[col_name] = cell.text data.append(row_data) # 输出数据 print(data) # 关闭浏览器 driver.quit() ``` 这里使用了 Chrome 浏览器和 ChromeDriver,需要根据自己的实际情况修改。同时,需要注意定位表格元素和单元格的 CSS 选择器,不同的 CSS 框架可能有不同的选择器。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值