如何提取一部分数据,我们使用url.open()从网站上获得



我写了一个连接到此网站的程序

http://mbox.dr-chuck.net/sakai.devel/1/2

我需要解析它并在该网站中获取电子邮件

url = http://mbox.dr-chuck.net/sakai.devel/1/2
data = urllib.urlopen(url).read()
for line in data:
templine = line.strip()
print templine

但它打印的是单个字母而不是单词就像我试图从中打印一行

F
r
o
m
n
e
w
s

如何解决这个问题请帮我该怎么办,我需要我的程序打印为行

  • 对不起我的语言,这是我发布的第一个问题

如果您使用python3,您可以执行以下操作:

from urllib.request import urlopen
data = urlopen("http://mbox.dr-chuck.net/sakai.devel/1/2").read().decode("utf8").split("n")
for k in data:
print(k)

更新:

如果你只想打印给定url的第二行,你可以这样做:

print(data[1])
>>> 'From: "Glenn R. Golden" <ggolden@umich.edu>'

否则,如果要打印所有以FromFrom:开头的行,可以执行以下操作:

for k in data:
if k.split(" ")[0] == "From" or k.split(" ")[0] == "From:":
print(k)

输出:

From news@gmane.org Tue Mar 04 03:33:20 200
From: "Glenn R. Golden" <ggolden@umich.edu>
url = 'http://mbox.dr-chuck.net/sakai.devel/1/2'
data = urllib.urlopen(url).readlines()
for line in data:
if line.startswith('From'):
print (line)

out:

From news@gmane.org Tue Mar 04 03:33:20 2003
From: "Glenn R. Golden" <ggolden@umich.edu>

使用readlines()获取文件中的每一行

使用startswith()获取以From开头的行

最新更新