当前位置:首页>python>Python 零基础100天—Day42 网页解析BeautifulSoup

Python 零基础100天—Day42 网页解析BeautifulSoup

  • 2026-06-27 18:57:37
Python 零基础100天—Day42 网页解析BeautifulSoup

🐍 Python Day42:网页解析 - BeautifulSoup — HTML 的瑞士军刀

🕐 预计用时:2-3 小时 | 🎯 目标:掌握 HTML 结构、标签选择、CSS 选择器、find/find_all


📖 今日目录

  1. HTML 基础回顾
  2. BeautifulSoup 入门
  3. find() — 查找单个元素
  4. find_all() — 查找多个元素
  5. CSS 选择器 select()
  6. 获取元素属性和文本
  7. 遍历 DOM 树
  8. 实战:解析新闻列表
  9. 实战:提取表格数据
  10. 今日小结

1. HTML 基础回顾

<!-- HTML 是由标签组成的树形结构 -->
<html>
  <head>
    <title>我的网页</title>
  </head>
  <body>
    <div class="container">
      <h1 id="title">欢迎</h1>
      <p class="intro">这是一个段落</p>
      <ul>
        <li>项目1</li>
        <li>项目2</li>
      </ul>
      <a href="https://example.com" target="_blank">链接</a>
    </div>
  </body>
</html>

<!-- 标签 = 元素
     class = CSS 类名(可重复)
     id = 唯一标识
     href/target = 属性 -->

2. BeautifulSoup 入门

# 安装: pip install beautifulsoup4
from bs4 import BeautifulSoup

html = """
<html>
<head><title>测试页面</title></head>
<body>
  <h1 id="main-title">Hello World</h1>
  <p class="intro">欢迎来到 Python 世界</p>
  <p class="content">学习爬虫很有趣</p>
</body>
</html>
"""

# 创建 BeautifulSoup 对象
soup = BeautifulSoup(html, "html.parser")  # 使用内置解析器

# 基本操作
print(soup.title)           # <title>测试页面</title>
print(soup.title.text)      # 测试页面
print(soup.h1)              # <h1 id="main-title">Hello World</h1>
print(soup.h1.text)         # Hello World
print(soup.body)            # 整个 body 内容

💡 解析器选择:
• html.parser — Python 内置,不需要安装
• lxml — 更快,需要安装(pip install lxml
• html5lib — 最宽容,能处理最烂的 HTML


3. find() — 查找单个元素

from bs4 import BeautifulSoup

html = """
<div class="products">
  <div class="item">
    <h2>商品A</h2>
    <span class="price">¥99</span>
    <span class="stock">有货</span>
  </div>
  <div class="item">
    <h2>商品B</h2>
    <span class="price">¥199</span>
    <span class="stock">缺货</span>
  </div>
</div>
"""

soup = BeautifulSoup(html, "html.parser")

# 按标签名查找(返回第一个匹配的)
h2 = soup.find("h2")
print(h2.text)  # 商品A

# 按 class 查找
price = soup.find("span", class_="price")
print(price.text)  # ¥99

# 按 id 查找
# element = soup.find("div", id="main")

# 按属性查找
stock = soup.find("span", attrs={"class": "stock"})
print(stock.text)  # 有货

# 组合条件
item = soup.find("div", class_="item")
print(item.h2.text)        # 商品A
print(item.find("span", class_="price").text)  # ¥99

4. find_all() — 查找多个元素

from bs4 import BeautifulSoup

soup = BeautifulSoup(html, "html.parser")

# 查找所有 h2 标签
h2s = soup.find_all("h2")
for h2 in h2s:
    print(h2.text)
# 商品A
# 商品B

# 查找所有 class="price" 的 span
prices = soup.find_all("span", class_="price")
for p in prices:
    print(p.text)
# ¥99
# ¥199

# 限制返回数量
first_price = soup.find_all("span", class_="price", limit=1)

# 用正则表达式匹配
import re
tags = soup.find_all(re.compile("^h[1-6]"))  # 所有标题标签
for tag in tags:
    print(f"<{tag.name}>: {tag.text}")
# 提取所有商品信息
items = soup.find_all("div", class_="item")
products = []
for item in items:
    name = item.h2.text
    price = item.find("span", class_="price").text
    stock = item.find("span", class_="stock").text
    products.append({
        "name": name,
        "price": price,
        "stock": stock
    })
    print(f"{name}: {price} ({stock})")

# 商品A: ¥99 (有货)
# 商品B: ¥199 (缺货)

5. CSS 选择器 select()

from bs4 import BeautifulSoup

html = """
<div class="container">
  <ul id="menu">
    <li class="active">首页</li>
    <li>产品</li>
    <li>关于</li>
  </ul>
  <div class="content">
    <p>段落1</p>
    <p>段落2</p>
    <a href="/link1">链接1</a>
    <a href="/link2">链接2</a>
  </div>
</div>
"""

soup = BeautifulSoup(html, "html.parser")

# CSS 选择器语法
print(soup.select("li"))           # 所有 li
print(soup.select(".active"))      # class="active"
print(soup.select("
#menu"))        # id="menu"
print(soup.select("#menu li"))     # #menu 下的所有 li
print(soup.select("ul > li"))      # ul 的直接子元素 li
print(soup.select("div.content"))  # div 且 class="content"
print(soup.select("a[href]"))      # 有 href 属性的 a 标签

# 组合选择器
print(soup.select("div.container ul#menu li.active"))
# class="container" 的 div → id="menu" 的 ul → class="active" 的 li

# 获取选择结果的文本
for li in soup.select("#menu li"):
    print(li.text)
# 首页
# 产品
# 关于

💡 CSS 选择器速查:
tag— 标签名
.class— 类名
#id— ID
tag.class— 标签+类名
A > B— A 的直接子元素 B
A B— A 的后代元素 B
A, B— A 或 B
[attr] — 有某属性


6. 获取元素属性和文本

from bs4 import BeautifulSoup

html = """
<a href="https://example.com" target="_blank" class="link">示例链接</a>
<img src="photo.jpg" alt="照片" width="300">
<input type="text" name="username" value="admin">
"""

soup = BeautifulSoup(html, "html.parser")

# 获取文本
a = soup.find("a")
print(a.text)           # 示例链接
print(a.get_text())     # 示例链接
print(a.string)         # 示例链接

# 获取属性
print(a["href"])        # https://example.com
print(a.get("target"))  # _blank
print(a.attrs)          # {'href': 'https://example.com', 'target': '_blank', 'class': ['link']}

# img 属性
img = soup.find("img")
print(img["src"])       # photo.jpg
print(img["alt"])       # 照片

# input 属性
inp = soup.find("input")
print(inp["type"])      # text
print(inp["value"])      # admin

7. 遍历 DOM 树

from bs4 import BeautifulSoup

html = """
<div id="root">
  <p>第一段</p>
  <span>span文本</span>
  <p>第二段</p>
</div>
"""

soup = BeautifulSoup(html, "html.parser")
root = soup.find("div", id="root")

# 向下遍历
print(root.children)      # 直接子元素(迭代器)
for child in root.children:
    if child.name:
        print(f"子元素: <{child.name}> {child.text}")

print(root.descendants)   # 所有后代元素(递归)

# 向上遍历
p = soup.find("p")
print(p.parent)           # 父元素
print(p.parent.name)      # div

# 兄弟元素
print(p.next_sibling)          # 下一个兄弟(可能含空文本)
print(p.find_next_sibling())   # 下一个标签兄弟
print(p.find_next_sibling("span"))  # 下一个 span 兄弟

8. 实战:解析新闻列表

from bs4 import BeautifulSoup
import requests

html = """
<div class="news-list">
  <div class="news-item">
    <h3><a href="/news/1">Python 3.13 发布</a></h3>
    <span class="time">2024-01-15</span>
    <span class="source">官方博客</span>
  </div>
  <div class="news-item">
    <h3><a href="/news/2">AI 编程助手大比拼</a></h3>
    <span class="time">2024-01-14</span>
    <span class="source">科技日报</span>
  </div>
  <div class="news-item">
    <h3><a href="/news/3">机器学习入门指南</a></h3>
    <span class="time">2024-01-13</span>
    <span class="source">数据科学杂志</span>
  </div>
</div>
"""

soup = BeautifulSoup(html, "html.parser")

news_list = []
for item in soup.find_all("div", class_="news-item"):
    title_tag = item.find("a")
    title = title_tag.text
    link = title_tag.get("href", "")
    time = item.find("span", class_="time").text
    source = item.find("span", class_="source").text

    news_list.append({
        "title": title,
        "link": link,
        "time": time,
        "source": source
    })

for news in news_list:
    print(f"📰 [{news['time']}] {news['title']} ({news['source']})")

# 📰 [2024-01-15] Python 3.13 发布 (官方博客)
# 📰 [2024-01-14] AI 编程助手大比拼 (科技日报)
# 📰 [2024-01-13] 机器学习入门指南 (数据科学杂志)

9. 实战:提取表格数据

from bs4 import BeautifulSoup

html = """
<table id="scores">
  <thead>
    <tr><th>姓名</th><th>语文</th><th>数学</th><th>英语</th></tr>
  </thead>
  <tbody>
    <tr><td>张三</td><td>90</td><td>95</td><td>88</td></tr>
    <tr><td>李四</td><td>85</td><td>80</td><td>92</td></tr>
    <tr><td>王五</td><td>78</td><td>88</td><td>76</td></tr>
  </tbody>
</table>
"""

soup = BeautifulSoup(html, "html.parser")

# 提取表头
headers = [th.text for th in soup.select("thead th")]
print(f"列名: {headers}")

# 提取数据行
rows = []
for tr in soup.select("tbody tr"):
    cells = [td.text for td in tr.find_all("td")]
    row = dict(zip(headers, cells))
    rows.append(row)

for row in rows:
    total = sum(int(v) for v in row.values() if v.isdigit())
    print(f"  {row['姓名']}: 总分 {total}")

# 列名: ['姓名', '语文', '数学', '英语']
#   张三: 总分 273
#   李四: 总分 257
#   王五: 总分 242

10. 今日小结

方法
用途
返回
find(tag, class_=, id=)
查找第一个匹配
Tag 对象
find_all(tag, class_=)
查找所有匹配
Tag 列表
select(css_selector)
CSS 选择器查找
Tag 列表
tag.text
获取文本
str
tag["attr"]
获取属性
str
tag.attrs
所有属性
dict
tag.find_next_sibling()
下一个兄弟
Tag
tag.parent
父元素
Tag

🎯 练习建议:
1. 用 BeautifulSoup 解析一个真实网页,提取所有链接
2. 提取一个电商页面的商品名、价格、评分
3. 解析维基百科的一个页面,提取所有段落的标题和内容


📚 Day42 完成!明天学习 XPath + lxml — 另一种强大的解析方式

轻松时刻:

请在微信客户端打开

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-02 23:26:28 HTTP/2.0 GET : https://f.mffb.com.cn/a/501216.html
  2. 运行时间 : 0.843745s [ 吞吐率:1.19req/s ] 内存消耗:4,617.24kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=75db5f4af5344fac8544c84f5572740a
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000626s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000602s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.031325s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.006616s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000922s ]
  6. SELECT * FROM `set` [ RunTime:0.028963s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000953s ]
  8. SELECT * FROM `article` WHERE `id` = 501216 LIMIT 1 [ RunTime:0.181663s ]
  9. UPDATE `article` SET `lasttime` = 1783005988 WHERE `id` = 501216 [ RunTime:0.048173s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 66 LIMIT 1 [ RunTime:0.005841s ]
  11. SELECT * FROM `article` WHERE `id` < 501216 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.051517s ]
  12. SELECT * FROM `article` WHERE `id` > 501216 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.070164s ]
  13. SELECT * FROM `article` WHERE `id` < 501216 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.139107s ]
  14. SELECT * FROM `article` WHERE `id` < 501216 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.049034s ]
  15. SELECT * FROM `article` WHERE `id` < 501216 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.140094s ]
0.845334s