,而不是試圖解析從URL中的每一行並付諸具體的行以csv文件,你可以只是將它全部推送到一個文本文件中以清理格式化,然後從中讀回,這可能看起來有點多作品,但這通常是我從URL獲取逗號分隔信息的方法。
import requests
URL = "http://www.cftc.gov/dea/newcot/FinFutWk.txt"
r = requests.get(URL,stream=True)
with open('file.txt','w') as W:
W.write(r.text)
with open('file.txt', 'r') as f:
lines = f.readlines()
for line in lines:
print(line.split(','))
你可以採取什麼是在for循環和交換它周圍的實際保存列表到列表的數組,所以你可以使用,而不是打印出來。
content = []
for line in lines:
content.append(line.split(','))
還要注意的是在分裂,你還是會發現有是具有後相當大量的白色空間的內容,您可以通過整個列表運行,數組中的每個列表,並刪除所有的空白區域,但這會毀掉列表中的第一個元素,或者只是將具有空格的數值轉換爲實際整數,因爲它們是以字符串形式讀入的。這將是你的偏好。如果您有任何問題,請隨時在下面添加評論。
編輯1: 請注意,如果您不希望保留隨內容保存的文件,請導入os庫,然後在將行讀入行數組後,刪除該文件。
import os
os.remove('file.txt')
的可能的複製[我如何分割多行字符串成多行?] (http://stackoverflow.com/questions/172439/how-do-i-split-a-multi-line-string-into-multiple-lines) – SiHa