簡體   English   中英

嘗試使用 Openpyxl 將數據寫入 xlsx 表時出現 ValueError

[英]ValueError when trying to write data to xlsx sheet using Openpyxl

我正在嘗試使用 openpyxl 將輸出的社交媒體鏈接保存到 excel 文件,但出現以下錯誤:

Traceback (most recent call last):
  File "/Users/xxxx/_Main_.py", line 40, in <module>
    sheet.cell(cell.row, col2).value = ig_get_present
  File "/Users/xxxx/venv/lib/python3.10/site-packages/openpyxl/cell/cell.py", line 215, in value
    self._bind_value(value)
  File "/Users/xxxx/venv/lib/python3.10/site-packages/openpyxl/cell/cell.py", line 184, in _bind_value
    raise ValueError("Cannot convert {0!r} to Excel".format(value))
ValueError: Cannot convert ['https://www.instagram.com/xxxx/'] to Excel

這是導致它的代碼,不知道它為什么會發生。

column_name = 'URL'
column_name2 = 'Instagram'

headers = [cell.value for cell in sheet[1]]

col = get_column_letter(headers.index(column_name) + 1)

col2 = headers.index(column_name2) + 1

for cell in sheet[col][1:]:
    url = cell.value
    r = requests.get(url)
    ig_get = ['instagram.com']
    ig_get_present = []
    soup = BeautifulSoup(r.content, 'html5lib')
    all_links = soup.find_all('a', href=True)
    for ig_get in ig_get:
        for link in all_links:
            if ig_get in link.attrs['href']:
                ig_get_present.append(link.attrs['href'])
    sheet.cell(cell.row, col2).value = ig_get_present

將數據轉換為字符串解決了我的問題。

ig_got = str(ig_get_present)
sheet.cell(cell.row, col2).value = ig_got

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM