下载并保存没有引号的CSV文件

时间:2017-11-30 19:26:30

标签: python csv

我正在尝试使用Python下载报告并将其另存为CSV文件。我无法弄清楚的一个问题是如何让CSV文件中的数据没有引号。当这些文件最终在Excel中使用时,所有列都被格式化为文本,而不是数字。

CSV文件中的示例行: “Branch Banking& Trust Company”,“Inside Sales”,“USD”,“10.00”

以下是我正在使用的代码:

from simple_salesforce import Salesforce
import requests
import base64
import json
import sys

sf = Salesforce(username="email"
            ,password="password"
            ,security_token="token")

#print "get sid " + str(sf.session_id)
sid = str(sf.session_id)
urlin = "https://na52.salesforce.com/" + sys.argv[1] + "?
view=d&snip&export=1&enc=UTF-8&xf=csv"

response = requests.get(urlin,
              headers = sf.headers, cookies = {'sid' : sid})

#response.contents
print response.content

非常感谢您提供的任何帮助,以保存没有这些引号的CSV文件。

以下是该过程的下一步,它将csv文件转换为excel并保存。

import csv
import sys
from openpyxl import Workbook
from openpyxl.cell import get_column_letter

nfilename = sys.argv[1]
print(nfilename)
nfilename2 = sys.argv[2]
print(nfilename2)

f = open(nfilename, 'r')

csv.register_dialect('commas', delimiter=',')

reader = csv.reader(f, dialect='commas')
#sys.argv[1]
wb = Workbook()
dest_filename = nfilename2

ws = wb.worksheets[0]
ws.title = "Sheet 1"

for row_index, row in enumerate(reader):
for column_index, cell in enumerate(row):
    column_letter = get_column_letter((column_index + 1))
    ws.cell('%s%s'%(column_letter, (row_index + 1))).value = cell

wb.save(filename = dest_filename)

0 个答案:

没有答案