python - 使用BeautifulSoup的find和find_all函数获取标签的问题

查看:539
本文介绍了python - 使用BeautifulSoup的find和find_all函数获取标签的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

在爬虫时遇到下面的导航树:

——div.center
    ——div.ft_ggbox_1 balck_ggbox_1
        ——div.black_jubao_right black_jubao_right_xxbh black_jubaot_xxbh
            ——form#listform
                ——p
                ——a
                    ——div.ft_publick_pzxx
                        ——div.ft_publick_pzxxright ft_publick_myjb
                ——p
                ——a

如果使用find函数,只能找到第一个a标签,下面的a都无法找到,但是如果用find_all函数,又会把a的child全提取,但实际上我只想提取所有a的href而已,这个问题我该怎么解决呢?

解决方案

提问问题的姿势不对,这样子别人很难为你解答,应该给出网页的完整结构。

from bs4 import BeautifulSoup

url = 'https://segmentfault.com/'
html = requests.get(url).content

soup = BeautifulSoup(html, 'lxml')
for hrefs in soup.find_all('a'):
    print(hrefs.get('href'))
    


这样子不就可以了

这篇关于python - 使用BeautifulSoup的find和find_all函数获取标签的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆