Heim > Fragen und Antworten > Hauptteil
我在学习爬虫的时候想把里面的标签去掉,但是使用re.sub不成功。代码如下:
#!usr/bin/env python3
#coding:utf-8
from urllib.request import urlopen
from bs4 import BeautifulSoup
import re
html = urlopen("http://www.jianshu.com")
bsObj = BeautifulSoup(html,"lxml")
txt = bsObj.findAll("p",{"class":re.compile("abstract")})
for word in txt:
if '<p class="abstract">' in word:
newword = re.sub(r'<p class="abstract">','\n',word)
print(newword)
else:
print(word)
请问这是是什么问题,谢谢!
黄舟2017-04-18 10:14:11
字符串对象p并不包含"sub"方法:
newword = p.sub('\n', word) # -> re.sub(.....)
写一小段代码给题主参考一下子:
import re
word = '<p class="abstract">AAAA<p class="abstract">bbb'
p = '<p class="abstract">'
newword = re.sub(p, '\n', word)
'''
Result:
In [21]: newword
Out[21]: '\nAAAA\nbbb'
In [22]: print newword
AAAA
bbb
In [23]:
'''