我正在尝试使用Python从url列表中收集数据集。数据采用ascii.txt格式。数据以不可读的格式返回,如“\xff\xfeO\x00B\x00S\x00”,其中它应该是一组带标题的制表符分隔的数字。举个例子,this是我正在尝试的最简单的页面之一。这些数据来自一本统计学教科书,我想用它来完成练习,而不用下载单独的excel文件。你知道吗
我尝试了两个请求和urllib/urllib2,但它们都返回相同的数据。它看起来是以iso-8859-1的形式出现的,但是试图将编码改成UTF-8、UTF-16和拉丁语-1的结果都是一样的。下面是我的示例代码,它至少返回我要使用的数据结构:
import urllib2
url = 'http://wps.aw.com/wps/media/objects/8992/9208383/Data_Sets/Ascii/Chapter1/HTWT1.txt'
raw = urllib2.urlopen(url)
data = []
for row in raw:
rawData = row.split("\t")
data.append(rawData)
我的代码输出如下:
>>> print(data)
[['\xff\xfeO\x00B\x00S\x00', '\x00X\x00', '\x00Y\x00\r\x00\n'], ['\x001\x00', '\x005\x00', '\x001\x004\x000\x00\r\x00\n'], ['\x002\x00', '\x009\x00', '\x001\x005\x007\x00\r\x00\n'], ['\x003\x00', '\x001\x003\x00', '\x002\x000\x005\x00\r\x00\n'], ['\x004\x00', '\x001\x002\x00', '\x001\x009\x008\x00\r\x00\n'], ['\x005\x00', '\x001\x000\x00', '\x001\x006\x002\x00\r\x00\n'], ['\x006\x00', '\x001\x001\x00', '\x001\x007\x004\x00\r\x00\n'], ['\x007\x00', '\x008\x00', '\x001\x005\x000\x00\r\x00\n'], ['\x008\x00', '\x009\x00', '\x001\x006\x005\x00\r\x00\n'], ['\x009\x00', '\x001\x000\x00', '\x001\x007\x000\x00\r\x00\n'], ['\x001\x000\x00', '\x001\x002\x00', '\x001\x008\x000\x00\r\x00\n'], ['\x001\x001\x00', '\x001\x001\x00', '\x001\x007\x000\x00\r\x00\n'], ['\x001\x002\x00', '\x009\x00', '\x001\x006\x002\x00\r\x00\n'], ['\x001\x003\x00', '\x001\x000\x00', '\x001\x006\x005\x00\r\x00\n'], ['\x001\x004\x00', '\x001\x002\x00', '\x001\x008\x000\x00\r\x00\n'], ['\x001\x005\x00', '\x008\x00', '\x001\x006\x000\x00\r\x00\n'], ['\x001\x006\x00', '\x009\x00', '\x001\x005\x005\x00\r\x00\n'], ['\x001\x007\x00', '\x001\x000\x00', '\x001\x006\x005\x00\r\x00\n'], ['\x001\x008\x00', '\x001\x005\x00', '\x001\x009\x000\x00\r\x00\n'], ['\x001\x009\x00', '\x001\x003\x00', '\x001\x008\x005\x00\r\x00\n'], ['\x002\x000\x00', '\x001\x001\x00', '\x001\x005\x005\x00\r\x00\n'], ['\x00']]
如何获得可用格式的数据?使用curl似乎可以返回正确的内容格式,但我更希望尽可能保持python风格。你知道吗
作为参考,我出于习惯使用Python2.7.9(致力于移动到3),但如果这使事情变得更简单,可以使用3。你知道吗
我不知道这是不是最好的方法,但它能得到你想要的结果。所以如果有人有更好的方法,就分享吧。你知道吗
在这里:
输出:
如果需要一些代码来解析特定的txt格式,可以使用下面这样的更通用的脚本。您只需根据txt文件头更改头列表(无OBS):
输出:
试试Python 3
Python 2-(未测试)
相关问题 更多 >
编程相关推荐