【问题标题】:Save url CSV to CSV? [duplicate]将网址 CSV 保存为 CSV? [复制]
【发布时间】:2018-06-26 20:16:19
【问题描述】:

我从一个 url 中提取了一些数据,但我无法用它创建一个 csv。当我尝试将其保存到 csv 中时,每个字符都在一行中,而不是在一个单元格中...

import csv
import requests
from requests.auth import HTTPBasicAuth

requests.get('url', auth=HTTPBasicAuth('url', 'pass'))
a = requests.get('url2', auth=HTTPBasicAuth('url', 'pass'))

b = a.text
a = b.replace('"', '')
f = a.replace('%', '')
g = f.replace('.','')
z = g.replace(',', '.')
zz = z.replace(';',',')

with open('jj.csv', 'w') as out_file:
        writer = csv.writer(out_file)
        writer.writerows(zz)
>>> zz

数据:

Tuky,Fecha,Bid_requests,Bid_responses_won,Fill_rate,Bid_responses_won_clearing_price,Bid_responses_won_clearing_income,aaaP,17/01/2018,41325955,22453,0.05,3.97,89.17

这是我保存的 csv:

【问题讨论】:

    标签: python csv


    【解决方案1】:

    试试这个:

    import csv
    import requests
    from requests.auth import HTTPBasicAuth
    
    requests.get('url', auth=HTTPBasicAuth('url', 'pass'))
    a = requests.get('url2', auth=HTTPBasicAuth('url', 'pass'))
    
    b = a.text
    a = b.replace('"', '')
    f = a.replace('%', '')
    g = f.replace('.','')
    z = g.replace(',', '.')
    zz = z.replace(';',',')
    zz = zz.split('.')
    
    with open('jj.csv', 'w') as out_file:
        writer = csv.writer(out_file)
        writer.writerows([zz])
    

    说明 您需要传递一个二维数组来写入行,在这种情况下您只有一行,因此我们将 [zz] 传递给 writer.writerows。 zz 本身应该是一个数组,其中每个元素都是一个新列,我们通过执行 zz.split('.') 来实现

    【讨论】:

      【解决方案2】:

      使用

      with open('jj.csv', 'w') as out_file:
          writer = csv.writer(out_file)
          writer.writerows(zz.split(","))
      

      这将从您的字符串创建一个列表,在 ',' 处拆分 - writerows 接受一个可迭代并将其写入文件 - 字符串也是可迭代的,这就是您单独获取每个字符的原因。

      在此处阅读:https://docs.python.org/3/library/csv.html#writer-objects

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-09-27
        • 2014-01-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-09-15
        • 1970-01-01
        相关资源
        最近更新 更多