为了账号安全,请及时绑定邮箱和手机立即绑定

BeautifulSoup:如何在一个类的 div 中找到所有 href 链接?

BeautifulSoup:如何在一个类的 div 中找到所有 href 链接?

白衣染霜花 2023-03-16 17:52:30
在 disboard.org/ 上,我试图在一个类为“服务器名称”的 div 中收集所有 href。源代码:def scrape():    url = 'https://disboard.org/search?keyword=hacking'    response = requests.get(url).content    soup = BeautifulSoup(response, 'html.parser')    areas = soup.find_all('div', class_='server-name')    for area in areas:        print(area.get('href'))调用此函数时给出的错误消息是“无”而不是链接。例子:NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone
查看完整描述

1 回答

?
慕少森

TA贡献2019条经验 获得超9个赞

替换为:


area.find('a').attrs['href']

完整代码


import requests

from bs4 import BeautifulSoup


def scrape():

    url = 'https://disboard.org/search?keyword=hacking'

    response = requests.get(url).content

    soup = BeautifulSoup(response, 'html.parser')

    areas = soup.find_all('div', class_='server-name')

    for area in areas:

        print(area.find('a').attrs['href'])



if __name__ == '__main__':

    scrape()

输出


/server/484696439063314482

/server/560847285874065408

/server/715563459739385886

/server/720783958966796309

/server/471545766134153237

/server/733350720690061383

/server/653642434948890626

/server/589905664277610521

/server/729633522565775381

/server/734257173890334832

/server/637702746954530865

/server/326839256758616068

/server/495986950478757891


查看完整回答
反对 回复 2023-03-16
  • 1 回答
  • 0 关注
  • 127 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信