解析库的使用大同小异。
bs4最大的优点就是解析式简练,提取简单。缺点就是需要对提取出来的文本进行再处理。不像re和lxml需要什么直接可以非常简练不带赘余的提取需要的文本。
具体的用法这位老哥写的非常详细了
对官方文档bs4库的用法做了本土化的详细的讲解。可以说概括的非常全面了。
class TiebaSpider(object):
def __init__(self):
self.url=''
def get_html(self,url):
res=requests.get(url=url,headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.182 Safari/537.36'})
html=res.text
return html
def parse_html(self,html):
parse_html = BeautifulSoup(html, 'html.parser')
text = parse_html.select('#content p')
return text
def save_html(self,filename,html):
with open('D:/request/'+filename,'w') as f:
for i in html:
j = str(i)
j = j[3:-4]
j=j+'\n'
f.write(j)
部分源码
|