当前位置:首页>python>合法爬虫全攻略:Python、公私钥、Token与天气数据的完美邂逅

合法爬虫全攻略:Python、公私钥、Token与天气数据的完美邂逅

  • 2026-02-26 22:49:52
合法爬虫全攻略:Python、公私钥、Token与天气数据的完美邂逅

Python学习

一、学前花絮

今天是2025.2.16,按照农历说是蛇年的除夕,也就是最后一天。明天就是马年的春节,也就是第一天。大家感觉是不是一年年的,太快了呢?想起唐代诗人刘希夷的《代悲白头翁》(又名《白头吟》):古人无复洛城东,今人还对落花风。年年岁岁花相似,岁岁年年人不同。

对于我们每个家庭来说,也是一样的。5年前,母亲还在,感觉过年是个很重要的事情。因为父亲早就去世了,所以自从母亲5年前离开之后,家里就没有老人了。我们作为父母的好像也没那么老,但似乎前面已经没有了“屏障”。想表达什么?只是感慨唏嘘而已……

我们继续深入学习有关爬虫方面的知识。对于python爬虫来说,语言规则本身并不太复杂,关键在于如何获取数据,进一步如何合规获取数据。为什么有些网站爬取信息会非常复杂?那是因为很多网站的数据信息是其核心资产,并不希望被无偿爬取,所以设置了很多技术壁垒来“反爬虫”。

对于我们个人学习来说,还是要从正规渠道去爬取数据,本文继续以和风天气网站为例,全面剖析网站中公钥、私钥、加密算法及token的获取等方面的知识。

二、Python 爬取天气数据的全流程实践与密码学解析

2.1 爬虫的 “自由” 与 “边界”

网络爬虫作为数据采集的核心工具,在大数据时代发挥着关键作用,但 “匿名爬取”“暴力请求” 等行为不仅可能导致目标网站服务器过载,更可能触碰法律红线。如何在技术实现与合规要求之间找到平衡?本文以 “爬取和风天气数据” 为典型场景,从密码学基础(公私钥、加密算法)、合规认证流程(Token 生成、项目备案)到代码落地,完整拆解 “合法爬取数据” 的技术逻辑与底层原理。

2.2密码学基础:加密算法的两大体系

爬虫合规的核心是 “身份认证”,而身份认证的底层是加密算法 —— 不同场景下的算法选择,决定了认证的安全性与合规性。

1.国际通用加密算法体系

国际算法是互联网场景的主流选择,核心包括三类关键算法:

算法类型

代表算法

核心用途

特点

非对称加密 / 签名

ED25519、RSA、ECDSA

身份认证、数字签名

公私钥分离,私钥签名、公钥验签,安全性高

哈希 / 摘要

SHA256、SHA3

数据防篡改、指纹生成

不可逆,相同输入必出相同输出,微小改动输出完全不同

对称加密

AES、DES

数据加密传输

加解密用同一密钥,速度快,适合大量数据加密加解密用同一密钥,速度快,适合大量数据加密

其中,ED25519 是椭圆曲线签名算法(ECDSA)的优化版本,以 “高效、轻量、安全” 成为 API 认证的首选 —— 和风天气的 JWT Token 认证,正是基于 ED25519 实现。

2.国密算法(SM 系列):自主可控的密码体系

国密算法(SM1/SM2/SM3/SM4)是我国自主设计的密码学体系,与国际算法无 “基础 / 兼容” 关系,是政务、金融等敏感领域的强制标准:

3.算法选择的核心逻辑

通用互联网场景(如天气数据爬取):优先选择 ED25519/SHA256,兼容性好、开发成本低;

敏感领域(政务 / 金融):必须使用国密算法,符合国家密码安全规范;

核心原则:算法本身无 “优劣”,但需匹配场景的合规要求。

2.3 合规核心:公私钥与 Token 的作用机制

爬虫合规的本质是 “向目标平台证明‘你是你’”,而公私钥 + Token 是实现这一目标的核心工具,二者分工明确、形成闭环。

1.公私钥:非对称加密的 “黄金搭档”

公私钥由开发者本地生成(如通过 Shell 命令),是身份认证的 “核心凭证”:

# 生成ED25519私钥(PEM格式)

openssl genpkey -algorithm ED25519 -out ed25519-private.pem

# 从私钥导出公钥(用于上传至平台)

openssl pkey -in ed25519-private.pem -pubout -out ed25519-public.pem

公私钥的说明:

密钥类型

归属方

核心作用

安全要求

私钥

开发者本地

生成 Token 的数字签名(相当于 “私人印章”)

绝对保密,仅本地存储,不传输、不上传

公钥

目标平台(如和风天气)

验证 Token 签名的真伪(相当于 “印章防伪模板”)

可公开,上传至平台并绑定项目,用于验签

2.Token:临时的 “身份通行证”

Token(如 JWT Token)是基于私钥 + 项目信息生成的临时凭证,核心价值是 “替代敏感凭证传输”:

① 生成逻辑:私钥 + 项目 ID + KID(公钥标识) → 加密生成 Token(含有效期、权限范围);

② 核心作用:

l临时有效:通常设置 1-24 小时有效期,即使泄露也可控;

l权限隔离:仅能调用项目开通的 API(如实时天气、7 天预报);

l安全传输:Token 加密生成,无法反向推导私钥 / 项目 ID;

③ 与公私钥的关系:Token 由私钥生成,平台用公钥验证 Token 合法性,形成 “签名 - 验签” 的认证闭环。

3.关键澄清:PEM 文件的本质

开发者生成的ed25519-private.pem文件虽是文本格式(可记事本打开),但并非普通文本:

l内容是 ED25519 私钥的二进制数据经 Base64 编码后的文本,需通过cryptography库按 ED25519 算法解析;

l操作系统仅能查看编码后的字符,只有解析后才能生成可用的私钥对象,用于 Token 签名。

我们在cmd终端上可以查看产生的公钥、私钥:

也就是说公钥、私钥文件是以.pem结尾的文本文件,尽管可以查看内容,但却是特殊格式的文件,必须经过ED25519 算法解析才能知道其含义。

2.4 实战落地:和风天气的合规爬取流程

和风天气是 “合规爬虫” 的典型场景 —— 平台开放免费 API,要求开发者完成身份备案、凭证绑定,才能合法获取数据,完整流程如下:

1. 合规前提:平台备案与凭证获取

步骤 1:注册开发者账号

访问和风天气开发者平台(https://dev.qweather.com/),完成手机号 / 邮箱注册,建立基础身份关联。

步骤 2:创建项目并明确权限

在控制台 “项目管理” 中创建项目,选择 “天气 API” 权限(如实时天气、7 天预报),平台分配Project ID(项目唯一标识)。

步骤 3:上传公钥并绑定身份

将本地生成的 ED25519 公钥上传至项目,平台分配KID(公钥唯一标识)—— 这是项目具备 API 调用权限的核心前提(公钥不上传,项目仅为 “空项目”)。

核心凭证清单(4 个)

2. 技术实现:Token 生成与数据爬取

代码核心解析

l私钥加载:cryptography库解析 PEM 格式私钥,验证 ED25519 算法,生成可用的私钥对象;

lToken 生成:私钥对项目信息签名,生成带有效期的 JWT Token;

lAPI 请求:携带 Token 调用 API,平台用公钥验证 Token 合法性,返回数据;

l容错处理:使用dict.get()避免 KeyError,提升代码健壮性。

3.合规性的核心保障

遵循 Robots 协议:和风天气robots.txt仅禁止/terms///about/等静态页面,API 路径完全开放;

身份可追溯:项目 ID+KID 绑定开发者身份,平台可追溯每一次 API 调用;

频率可控:免费版 API 有每日调用次数限制,避免服务器过载;

数据合规:平台提供的气象数据来源合法,非商用场景无法律风险。

2.5 爬虫合规的核心逻辑总结

加密算法是基础:ED25519 等国际算法适配通用场景,国密算法适配敏感场景,选择需匹配合规要求;

公私钥是核心:私钥本地签名生成 Token,公钥上传平台验签,形成 “身份认证闭环”;

Token 是桥梁:替代敏感凭证传输,兼顾安全性与便捷性;

合规的本质:不是 “技术能爬”,而是 “平台认可”—— 通过备案、凭证绑定、Token 认证,让爬取行为处于平台的可控范围。

2.6 延伸思考:合规爬虫 vs 反爬网站

l合规爬虫(如和风天气):按平台规则实现,代码稳定、无法律风险,核心是 “理解认证规范”;

l反爬网站(如电商 / 资讯平台):需突破验证码、IP 封禁、JS 加密等反爬措施,代码维护成本高,且有法律风险。

学习爬虫的最优路径是从 “合规场景” 入手,理解加密算法、身份认证、API 调用的核心逻辑,再逐步探索复杂场景 —— 既符合法律规范,也能夯实技术基础。

三、小结

对于python的爬虫技术,我们已经输出了多篇文章,从不同角度去理解这项技术及面临的合规性问题。

爬虫的价值不在于 “突破限制”,而在于 “合法高效地获取数据”。本文以和风天气为例,从密码学基础到合规流程,完整拆解了 “加密算法 - 公私钥 - Token - 合规爬取” 的全链路逻辑,核心是让开发者理解:技术实现的前提是合规,而合规的底层是完善的身份认证体系。无论是国际算法还是国密算法,无论是公私钥还是 Token,最终都是为了在 “数据获取” 与 “平台保护” 之间找到平衡,这也是爬虫技术可持续发展的核心。

让我们保持学习热情,多做练习。我们下期再见!

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-02-28 08:55:54 HTTP/2.0 GET : https://f.mffb.com.cn/a/475899.html
  2. 运行时间 : 0.092457s [ 吞吐率:10.82req/s ] 内存消耗:4,579.94kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=0177cef8c1987f0e91a1c96317f96e11
  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.000605s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000820s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000306s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000307s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000679s ]
  6. SELECT * FROM `set` [ RunTime:0.000233s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000730s ]
  8. SELECT * FROM `article` WHERE `id` = 475899 LIMIT 1 [ RunTime:0.000574s ]
  9. UPDATE `article` SET `lasttime` = 1772240154 WHERE `id` = 475899 [ RunTime:0.010742s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 66 LIMIT 1 [ RunTime:0.000297s ]
  11. SELECT * FROM `article` WHERE `id` < 475899 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000517s ]
  12. SELECT * FROM `article` WHERE `id` > 475899 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.001426s ]
  13. SELECT * FROM `article` WHERE `id` < 475899 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.001363s ]
  14. SELECT * FROM `article` WHERE `id` < 475899 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.006196s ]
  15. SELECT * FROM `article` WHERE `id` < 475899 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.000959s ]
0.094016s