-1

我有这段代码,从网站解析数据:

f = open('a url')
new = f.read()
derp = re.findall(r'<ol class="lh-192 trendingnow_trend-list fw-b">(.*?)</ol>', new)
line = derp

def striphtml2(data):
    p = re.compile(r'\d')
    return p.sub(' ', data)
new = striphtml2(line)
#removes anything in <>
def striphtml(data):
    p = re.compile(r'<.*?>')
    return p.sub(' ', data)
ninja = striphtml(new)

但是每次我运行它时,我都会得到这个:

TypeError: expected string or buffer

我不知道它有什么问题。

4

1 回答 1

6

您正在将一个列表传递给函数。line不是字符串,而是整个字符串列表。

循环它:

for line in derp:
于 2013-06-28T13:45:40.827 回答