鱼C论坛

 找回密码
 立即注册
查看: 2667|回复: 3

python中使用openpyxl库操作表格问题

[复制链接]
发表于 2023-8-23 17:22:06 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 python小小白哟 于 2023-8-23 17:40 编辑

python中使用openpyxl库操作表格问题,我想把爬下来的数据自动添加到表格中,以下代码只能添加到列A   行1为  56的值,然后 A列行2为 43的值,如何把爬下来的数据自动添加到表格中呢?就是不指定行号和列号,自动添加数据。

  1. from openpyxl import Workbook
  2. import time

  3. book = Workbook()
  4. sheet = book.active

  5. sheet['A1'] = 56
  6. sheet['A2'] = 43

  7. now = time.strftime("%x")
  8. sheet['A3'] = now

  9. book.save("sample.xlsx")
复制代码







以下是具体代码:

  1. import time
  2. from selenium.webdriver.common.by import By
  3. from selenium import webdriver
  4. import openpyxl

  5. headers = {
  6.     "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36 Edg/116.0.1938.54"
  7. }

  8. browser = webdriver.Edge()
  9. browser.get("https://www.52pojie.cn/")
  10. a = browser.find_element(By.XPATH,"//*[@id='category_']/table/tbody/tr[2]").text

  11. wb = openpyxl.Workbook()
  12. sheet = wb.active
  13. data = [a]
  14. for value in data:
  15.     sheet.append([value])
  16. wb.save("52破解帖子标题名称.xlsx")

  17. time.sleep(3)
复制代码



但是只能把所有内容都存到一个A1表格中,并不能一条数据存一个位置,我想实现的功能是一条数据对应一行。


微信截图_20230823173653.jpg



小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-8-23 17:22:30 | 显示全部楼层
要将爬取的数据自动添加到表格中,您可以使用openpyxl库的append方法。这样可以将数据添加到表格的下一个空行。

以下是使用append方法将数据自动添加到表格的示例代码:

  1. from openpyxl import Workbook
  2. import time

  3. book = Workbook()
  4. sheet = book.active

  5. data = [56, 43]  # 爬取的数据

  6. for value in data:
  7.     sheet.append([value])

  8. now = time.strftime("%x")
  9. sheet.append([now])

  10. book.save("sample.xlsx")
复制代码


在这个示例中,我们首先定义了要添加到表格的数据,即data列表。然后我们使用for循环遍历数据,并通过append方法将每个数据值添加到表格的下一个空行。

最后,我们也使用了一个时间戳,将当前日期添加到表格中。

运行这段代码后,数据将被自动添加到表格中而无需指定行号和列号。
如果问题已经解决,请设置最佳答案
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-8-23 17:22:38 | 显示全部楼层
你可以使用openpyxl库中的append方法来实现将数据自动添加到表格中。该方法可以在表格的下一行添加数据,无需指定行号和列号。

下面是修改后的代码示例:

  1. from openpyxl import Workbook
  2. import time

  3. book = Workbook()
  4. sheet = book.active

  5. sheet.append([56])
  6. sheet.append([43])

  7. now = time.strftime("%x")
  8. sheet.append([now])

  9. book.save("sample.xlsx")
复制代码


在这个示例中,我们使用了append方法来添加数据。append方法接受一个列表作为参数,该列表包含要添加到表格中的数据。每次调用append方法时,数据将被添加到表格的下一行。

这样,你就可以将爬取到的数据自动添加到表格中,而无需指定行号和列号。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-8-23 17:42:50 | 显示全部楼层
陶远航 发表于 2023-8-23 17:22
要将爬取的数据自动添加到表格中,您可以使用openpyxl库的append方法。这样可以将数据添加到表格的下一个空 ...

你好,如何实现一条数据占用一行呢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-26 02:34

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表