[英]Is it possible to push data from Excel sheet using Python into a database?
我有一個要求,我需要使用 Python 將我將從網頁中收集的數據寫入 excel 單元格。
但沒有選擇如何做到這一點。
你們有什么想法嗎?
根據@Marcin 的評論,這里是我正在尋找的更明確的要求
為什么python是一個要求? ->是的,我使用 Python 和 Beautiful Soup 模塊從網頁中獲取數據。
excel在哪里運行,或者它正在運行? ->當腳本從網頁完成其數據收集時需要 Excel,並將嘗試到下一頁執行相同的任務,我希望將當前數據保存為 excel 格式。
這與網絡有什么關系? 你到底想達到什么目的? 希望這個答案能回答你的上述問題。
你可以只處理一個 CSV 文件嗎? 是的,我可以使用它,但我的最終目標是將數據推送回數據庫,可以是 Oracle 或 Access 數據庫。
建築學
------------------
| web |
| page |
------------------
|
|
|
Python and BS4(Data Extraction)
|
|
|
------------------
| Excel |
| data |
------------------
|
|
|
Python to Push Data(Oracle/Access)
|
|
|
------------------
| Any |
| DB |
------------------
編輯
根據@Thang
我試過,但收到錯誤:
Microsoft Windows [Version 6.1.7600]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Users\Happy>python
Python 2.7.3 (default, Apr 10 2012, 23:31:26) [MSC v.1500 32 bit (Intel)] on win
32
Type "help", "copyright", "credits" or "license" for more information.
>>> import win32com.client
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named win32com.client
>>>
對於 Office 2007 及更高版本,API 是 .Net,因此您可以使用Python for .Net或IronPython 。
Thang 提到了 pywin32,它也適用於 Office 2007 及更高版本和舊版本。
如果您使用的是 Office 2007 excel(又名 xlsx 文件),請嘗試使用OpenPyXL
如果您只需要能夠在 Excel 中使用數據,請使用csv
模塊將其保存為csv
格式。
如果您需要直接生成 Excel 格式的文件(我想不出您應該這樣做的原因,因為您沒有說您正在接收 excel 文件),您可以使用其他答案中提到的第三方模塊之一。
更新:使用 CSV 不會阻止您將數據放入數據庫; 同樣,如果您想將數據放入數據庫中,Excel 也不會特別為您提供幫助。 更好的方法是簡單地將數據保存在內存中,並在完成后將其寫入數據庫。 如果您需要中間存儲,請使用另一個數據庫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.