0

我正在尝试从 URL 的文本文件中读取推文

http://rasinsrv07.cstcis.cti.depaul.edu/CSC455/assignment5.txt

文件中的推文在一行中列出(没有换行符),并用“EndOfTweet”字符串标点。我正在使用以下代码读取文件:

import urllib2
wfd = urllib2.urlopen('http://rasinsrv07.cstcis.cti.depaul.edu/CSC455/assignment5.txt')
data = wfd.read()

我知道我必须在“EndOfTweet”上使用 split 来分隔行,但由于只有一行,我不明白如何遍历文件并分隔每一行。

for line in data:
    line = data.split('EndOfTweet')
4

1 回答 1

1

你这么近!

在您调用wfd.read()时,data将包含该文件的原始文本。循环文件的正常方法是调用类似的东西for line in data,它只是寻找换行符来分割数据。在这种情况下,您的数据不包含正常的换行符终止符。相反,他使用文本EndOfTweet来分隔你的行。这是你应该做的:

import urllib2
import json
wfd = urllib2.urlopen('http://rasinsrv07.cstcis.cti.depaul.edu/CSC455/assignment5.txt')
data = wfd.read()
for line in data.split('EndOfTweet'):
    # From here, line will contain a single tweet. It appears this line is a JSON parsable structure.
    decoded_line = json.loads(line)
    # Now, lets print out the text of the tweet to show we can
    print decoded_line.get(u'text')
于 2013-11-09T09:04:38.067 回答