19-爬虫2_BeautifulSoup

  • 阅读: 301
  • 更新: 2022-06-11

难度:

1. 题目描述

2. 关键点

3. 代码实现

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import requests
from bs4 import BeautifulSoup


def get_article_info(url):
    # 获取整个页面 html 内容
    r = requests.get(url)
    html = r.text
    soup = BeautifulSoup(html)

    # 获取页面标题
    title = soup.title.string

    # 获取左侧菜单 html 内容
    menu_html = soup.find('ul', class_='list-group list-group-flush')

    # 从左侧菜单 html 内容中获取所有菜单信息
    menu_info = [(a['href'], a.string) for a in menu_html.find_all('a')]

    return title, menu_info


if __name__ == '__main__':
    url = 'https://python-abc.xyz/basic/5642/'
    title, menu_info = get_article_info(url)
    print('文章标题为:', title)
    print('菜单列表如下:')
    for menu in menu_info:
        print('链接:https://python-abc.xyz{};标题:{}'.format(*menu))

4. 运行示例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
文章标题为: 19-爬虫2_BeautifulSoup | python-abc
菜单列表如下:
链接:https://python-abc.xyz/basic/8301/;标题:01-猜数游戏
链接:https://python-abc.xyz/basic/1376/;标题:02-统计字符数量
链接:https://python-abc.xyz/basic/9025/;标题:03-九九乘法表
链接:https://python-abc.xyz/basic/4007/;标题:04-注册登录系统_类实现
链接:https://python-abc.xyz/basic/6142/;标题:05-水仙花数
链接:https://python-abc.xyz/basic/1352/;标题:06-求阶乘
链接:https://python-abc.xyz/basic/4144/;标题:07-海龟绘图1_随机对称图形
链接:https://python-abc.xyz/basic/7764/;标题:07-海龟绘图2_数字时钟
链接:https://python-abc.xyz/basic/7859/;标题:07-海龟绘图3_黄金螺旋
链接:https://python-abc.xyz/basic/9354/;标题:07-海龟绘图4_太极图
链接:https://python-abc.xyz/basic/2668/;标题:08-杨辉三角形
链接:https://python-abc.xyz/basic/1092/;标题:09-检测密码强度
链接:https://python-abc.xyz/basic/9103/;标题:10-检测自己的 Python 等级
链接:https://python-abc.xyz/basic/6639/;标题:11-斐波那契数列
链接:https://python-abc.xyz/basic/4322/;标题:12-矩阵1_转置
链接:https://python-abc.xyz/basic/8961/;标题:12-矩阵2_相加
链接:https://python-abc.xyz/basic/3984/;标题:12-矩阵3_相乘
链接:https://python-abc.xyz/basic/2989/;标题:13-回文数
链接:https://python-abc.xyz/basic/1253/;标题:14-字符串加密
链接:https://python-abc.xyz/basic/5982/;标题:15-排序1_选择排序
链接:https://python-abc.xyz/basic/9746/;标题:15-排序2_冒泡排序
链接:https://python-abc.xyz/basic/7394/;标题:15-排序3_插入排序
链接:https://python-abc.xyz/basic/6936/;标题:15-排序4_归并排序
链接:https://python-abc.xyz/basic/3002/;标题:15-排序5_快速排序
链接:https://python-abc.xyz/basic/6708/;标题:16-素数
链接:https://python-abc.xyz/basic/1853/;标题:17-非利克瑞尔数
链接:https://python-abc.xyz/basic/6887/;标题:18-读写文件
链接:https://python-abc.xyz/basic/5995/;标题:19-爬虫1_正则
链接:https://python-abc.xyz/basic/5642/;标题:19-爬虫2_BeautifulSoup
链接:https://python-abc.xyz/basic/5844/;标题:20-十进制转二进制

5. 进阶思考

  1. 解析出问题描述

=== 全文完 ===


欢迎加入QQ群:778391413

京公网安备 11011302003970号 京ICP备2022012301号-1