您的位置:首页 > 其它

[爬虫入门]BeautifulSoup获取标外内容

2018-02-16 14:27 225 查看
    写完后再看了下正则,发现有个简单的方法可以获取,只需替换第4步
name_pat = '(<div class="info1">)(.+)(</div>)'
#将div分为三组,中间的第二组即为想要的内容
name_re = re.match(name_pat,str(name_tag))
if name_re is not None:
print name_re.group(2)
-------------------------------------------------------------------------------------------------------------------------------------------------
    前几天入门开始学爬虫,把图爬下来了可是图片的名字不在标签内不会如何获取,看百度说用正则
无奈之前没学过就放着了。今天学了正则想来试试,发现虽然tag无法直接切片,但是可以用内建函数
str()转换成字符串再切片,虽然感觉这方法有点呆,不过也达到了目的,等正则学好了再试试正则的方法。

例子:<div class ="cla22">
<form>
<div class="info1">张三</div>
</form>
</div>

1.先获取网页htmlsoup = BeautifulSoup(content, "html5lib") 2.使用find找到包含对应class、id的tag
div_tag = soup.find('div',class_='cla22')
3.可以直接先print打印div_tag的内容
print(div_tag)
4.下面开始提取div外的内容
name_tag = div_tag.find('div',class_='info1')
name = str(name_tag)[19:-6]    #名字从第19位开始,去掉后面多余的6个字符
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息