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

How to extract a part of data, that we get from website using 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)

输出:

From news@gmane.org Tue Mar 04 03:33:20 2003

From: "Glenn R. Golden" <ggolden@umich.edu>

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

使用startswith()获取以From

开头的行