当前位置:首页>网站源码>爬虫天花板!网站改版不用改代码!智能自愈+隐身反爬,网页提取比BS4快784倍

爬虫天花板!网站改版不用改代码!智能自愈+隐身反爬,网页提取比BS4快784倍

  • 2026-05-11 09:39:49
爬虫天花板!网站改版不用改代码!智能自愈+隐身反爬,网页提取比BS4快784倍
01
传统痛点
  1. 网站一改版,代码全作废:写死的 CSS/XPath 选择器,页面结构一变直接失效,反复调试维护成本极高
  2. 反爬拦路虎,爬取寸步难行:Cloudflare Turnstile、人机验证、指纹检测层层设防,普通请求直接被拦截
  3. 性能与易用性两难全:BeautifulSoup 简单但大规模爬取性能拉胯;Scrapy 功能强但上手门槛高,新手难快速落地
02
项目介绍
Scrapling 是一款开源自适应 Web 抓取框架,GitHub 星标已突破 3 万,核心定位是一次编写、长期稳定、零妥协适配现代 Web
它能自动学习网站结构变化,页面更新后智能重定位目标元素;开箱即用绕过 Cloudflare 等反爬系统;几行代码实现并发、多会话爬取,支持暂停恢复与代理轮换,兼顾新手友好与高手需求。
该框架由 Karim Shoair 设计开发,基于 BSD-3-Clause 许可证开源,核心适配 Python 3.10 及以上版本,经过实战检验,每天被数百名爬虫开发者使用,测试覆盖率达 92%,类型提示全覆盖,生产环境稳定可靠。
03
核心特性
1. 自适应元素追踪:网站改版不用改代码
  • 智能算法记录元素特征,不依赖固定选择器,无需因网站结构微调反复修改代码
  • 开启`adaptive=True`自动找回目标,搭配`auto_save=True`一次保存永久适配,真正实现“一次编写,长期有效”
  • 支持智能相似元素查找,可自动定位与已找到元素特征相似的目标,进一步提升适配性
2. 硬核反反爬:开箱绕过 Cloudflare
  • 四大 Fetcher 覆盖全场景:普通 HTTP(Fetcher)、异步请求、隐身绕过(StealthyFetcher)、动态渲染(DynamicFetcher),按需选择适配不同场景
  • `StealthyFetcher`自动伪装指纹,绕过所有 Cloudflare Turnstile 验证,结合文档可知,该工具可有效应对 reCAPTCHA、hCAPTCHA、funcaptcha、textcaptcha、awscaptcha 等各类验证码验证
  • 内置代理轮换(支持轮询及自定义策略)、DNS 防泄漏(通过 Cloudflare DoH 路由 DNS 查询)、域名和广告屏蔽(内置约 3500 个广告/追踪域名),隐身能力拉满
3. 完整爬虫框架:轻量媲美 Scrapy
  • 类 Scrapy 异步 API,上手零成本,支持 `start_urls`、async `parse` 回调函数及 `Request`/`Response` 对象,熟悉 Scrapy 的开发者可快速迁移
  • 支持并发控制(可配置并发数)、多会话混合(通过 ID 路由不同请求到对应 Session)、断点续爬(基于 Checkpoint 持久化,按 Ctrl+C 优雅暂停,重启后从上次停止处继续)、流式输出(通过 `async for item in spider.stream()` 实时获取数据)
  • 内置 JSON/JSONL 导出(通过 `result.items.tojson()`/`result.items.tojsonl()`),开发模式可缓存响应到磁盘,后续迭代 `parse()` 逻辑无需重复请求目标服务器,提升开发效率
  • 支持 robots.txt 合规配置(可选 `robotstxtobey` 标志),适配 `Disallow`、`Crawl-delay` 和 `Request-rate` 指令,并按域名缓存,避免违规爬取
  • 自动检测被阻止请求,支持自定义重试逻辑,降低爬取失败率
4. 性能炸裂:速度碾压传统库
  • 文本提取比 BS4(Lxml 解析器)快 784 倍,比 PyQuery 快 12 倍,与 Parsel/Scrapy 性能接近(仅慢 0.02ms),JSON 序列化比 Python 标准库快 10 倍
  • 内存优化设计,采用延迟加载和高效数据结构,最小化内存占用,大规模爬取无压力
  • 92% 测试覆盖率,完整的类型提示,整个代码库每次更改都会通过 PyRight 和 MyPy 自动扫描,确保代码质量
5. AI 友好:内置 MCP 服务降本增效
  • 内置 MCP 服务器,支持 AI 辅助 Web 抓取和数据提取,可对接 Claude/Cursor 等 AI 工具
  • 提前提取目标内容,过滤冗余信息,大幅减少 AI Token 消耗,降低使用成本,同时提升 AI 处理效率(有演示视频可参考)
  • 轻松搭建 AI 数据采集管道,可辅助应对各类验证码识别(如文档中提及的 reCAPTCHA、hCAPTCHA、funcaptcha 等),结合 NopeCHA 等工具可实现验证码自动识别
6. 开发者友好:降低上手与使用成本
  • 交互式 Web Scraping Shell:内置 IPython Shell,集成 Scrapling 功能,提供快捷方式,可将 curl 请求转换为 Scrapling 请求,还能在浏览器中查看请求结果,加快脚本开发
  • 终端直接使用:无需编写代码,通过 CLI 命令即可抓取 URL 并导出内容(支持 txt、md、html 格式),适配不同使用需求
  • 丰富的导航 API:支持父级、兄弟级、子级元素导航,可实现高级 DOM 遍历,搭配多种选择方式(CSS 选择器、XPath、BeautifulSoup 风格、文本搜索、正则搜索等),灵活提取数据
  • 自动选择器生成:可为任何元素自动生成强大的 CSS/XPath 选择器,减少手动编写选择器的工作量
  • 现成 Docker 镜像:每次发布都会自动构建并推送包含所有浏览器和额外功能的 Docker 镜像,无需手动配置环境,快速部署使用
  • 增强文本处理:内置正则表达式、内容清理方法和优化的字符串操作,无需额外引入工具,简化数据清洗流程
04
性能测试
文本提取速度(5000 嵌套元素,100 + 次平均)
排名
耗时 (ms)
相对速度
1
Scrapling
2.02
1.0x
2
Parsel/Scrapy
2.04
1.01x
3
Raw Lxml
2.54
1.26x
4
PyQuery
24.17
~12x
5
BS4(Lxml)
1584.31
~784x
元素搜索性能
  • Scrapling:2.39ms
  • AutoScraper:12.45ms(慢 5.2 倍)
补充说明:所有基准测试均为 100+ 次运行的平均值,测试方法可参考项目仓库中的 `benchmarks.py` 文件,确保测试结果的客观性和准确性。
05
快速入门
1. 环境安装(Python≥3.10)
# 基础安装pip install scrapling# 安装反爬/浏览器依赖pip install "scrapling[fetchers]"scrapling install# 全功能安装(含AI/Shell)pip install "scrapling[all]"
补充说明:基础安装仅包含解析器引擎及核心依赖,无 Fetcher 和 CLI 相关功能;安装 `scrapling[fetchers]` 后,需执行 `scrapling install` 下载浏览器及系统依赖、指纹操作依赖,也可通过代码调用 `from scrapling.cli import install` 完成安装(支持强制重装);`scrapling[ai]` 可单独安装 MCP 服务器功能,`scrapling[shell]` 可单独安装交互式 Shell 和 CLI 提取功能。
Docker 安装:可直接拉取包含所有功能和浏览器的镜像,无需手动配置环境,命令如下:
从 DockerHub 拉取:
`docker pull pyd4vinci/scrapling`
从 GitHub 注册表拉取:
`docker pull ghcr.io/d4vinci/scrapling:latest`
该镜像通过 GitHub Actions 自动构建推送,与项目主分支同步更新。
2. 基础示例:抓取名言网站
注意:经测试,目标网站 `https://quotes.toscrape.com/` 目前存在解析失败问题,报错信息为“网页解析失败,可能是不支持的网页类型,请检查网页或稍后重试”,该网站本身包含多条名言及标签内容(如“‘The world as we have created it is a process of our thinking...’”),可更换其他可正常访问的目标网站测试该代码逻辑。
from scrapling.fetchers import Fetcher# 发起请求(若该网站解析失败,可替换为其他可正常访问的网页URL)page = Fetcher.get("https://quotes.toscrape.com/")# 提取数据quotes = page.css(".quote .text::text").getall()authors = page.css(".quote .author::text").getall()print(list(zip(quotes, authors)))
3. 隐身模式:绕过 Cloudflare
注意:经测试,目标网站 `https://nopecha.com/demo/cloudflare` 目前存在解析失败问题,报错信息为“网页解析失败,可能是不支持的网页类型,请检查网页或稍后重试”。该网站为 Cloudflare 验证演示页面,包含 reCAPTCHA、hCAPTCHA、funcaptcha、textcaptcha、awscaptcha 等多种验证类型,正常情况下 Scrapling 的 `StealthyFetcher` 可自动绕过这些验证,提取页面中的验证相关数据及服务信息。
from scrapling.fetchers import StealthyFetcher# 自动绕过各类验证(该网站正常访问时支持验证绕过测试,解析失败可稍后重试)page = StealthyFetcher.fetch("https://nopecha.com/demo/cloudflare")data = page.css("#padded_content a").getall()print(data)
4. 完整爬虫:并发 + 翻页
注意:该示例基于 `https://quotes.toscrape.com/` 编写,若该网站无法解析,可将 `start_urls` 替换为其他支持翻页的可正常访问网页URL,爬虫逻辑保持不变。
from scrapling.spiders import Spider, Responseclass QuotesSpider(Spider):name = "quotes"start_urls = ["https://quotes.toscrape.com/"]  # 解析失败时可替换URLasync def parse(self, response: Response):for quote in response.css(".quote"):yield {"text": quote.css(".text::text").get(),"author": quote.css(".author::text").get()}# 自动翻页next_page = response.css(".next a::attr(href)").get()if next_page:yield response.follow(next_page)# 启动爬虫result = QuotesSpider().start()result.items.to_json("quotes.json")
5. 多会话混合爬虫示例
补充 README 中重点提及的多会话使用场景,可在单个爬虫中搭配不同类型 Session,适配不同请求需求:
from scrapling.spiders import Spider, Request, Responsefrom scrapling.fetchers import FetcherSession, AsyncStealthySessionclass MultiSessionSpider(Spider):name = "multi"start_urls = ["https://example.com/"]  # 该URL解析失败,替换为可正常访问的URLdef configure_sessions(self, manager):# 配置两种Session:快速HTTP请求(fast)、隐身绕过(stealth)manager.add("fast", FetcherSession(impersonate="chrome"))manager.add("stealth", AsyncStealthySession(headless=True), lazy=True)async def parse(self, response: Response):for link in response.css('a::attr(href)').getall():# 受保护页面路由到隐身Session,普通页面使用快速Sessionif "protected" in link:yield Request(link, sid="stealth")else:yield Request(link, sid="fast", callback=self.parse)
6. Async Session 管理示例
补充 README 中异步 Session 的使用方法,适配高并发场景:
import asynciofrom scrapling.fetchers import FetcherSession, AsyncStealthySession, AsyncDynamicSession# FetcherSession 支持同步/异步两种模式async with FetcherSession(http3=Trueas session:page1 = session.get('https://example.com/page1')  # 该URL解析失败page2 = session.get('https://example.com/page2', impersonate='firefox135')  # 该URL解析失败# 异步Session并发请求示例async with AsyncStealthySession(max_pages=2as session:tasks = []urls = ['https://example.com/page1''https://example.com/page2']  # 两个URL均解析失败,需替换为可正常访问URLfor url in urls:task = session.fetch(url)tasks.append(task)# 查看浏览器标签池状态(可选)print(session.get_pool_stats())results = await asyncio.gather(*tasks)print(session.get_pool_stats())
7. CLI 命令使用示例
补充 README 中 CLI 功能的使用方法,无需编写代码即可完成抓取,适配不同场景需求,结合工具特性补充完整示例:
# 1. 启动交互式Web Scraping Shell(集成IPython,支持快捷操作)scrapling shell# 2. 基础提取:抓取网页内容并导出为指定格式(txt/md/html)# 示例1:提取网页全文,导出为md文件scrapling extract get 'https://example.com' content.md# 示例2:指定CSS选择器提取目标内容,模拟Chrome浏览器请求scrapling extract get 'https://example.com' content.txt --css-selector '#target-element' --impersonate 'chrome'# 示例3:使用隐身模式,自动绕过Cloudflare等验证提取内容scrapling extract stealthy-fetch 'https://example.com/protected-page' result.html --solve-cloudflare# 3. 动态渲染页面提取(适配JS渲染的动态内容)scrapling extract dynamic-fetch 'https://example.com/dynamic-page' dynamic-result.txt --wait 3  # 等待3秒加载动态内容# 4. 查看CLI帮助文档,获取所有可用命令及参数scrapling --helpscrapling extract --help  # 查看提取相关命令详情
GitHub 项目地址

https://github.com/D4Vinci/Scrapling

06
扩展阅读
关注我持续分享高质量内容

终身学习,深耕AI领域

持续分享,优质AI开源

感谢关注,携手AI同行

最新文章

随机文章

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