当前位置: 首页 > news >正文

Crawl4ai实操2

实操2

Chapter 1 - 基础形态

1.1 - Basic Type

import asyncio  # 异步编程库
from crawl4ai import AsyncWebCrawler  # 网页抓取工具
import osOUTPUT_PATH = './outputs/markdown/'def output_md(base_filename, md_str):# 创建输出目录os.makedirs(OUTPUT_PATH, exist_ok=True)# 生成带长度的文件名length = len(md_str)name, ext = os.path.splitext(base_filename)filename = f"{name}({length}){ext}"# 完整路径full_path = os.path.join(OUTPUT_PATH, filename)with open(full_path, 'w', encoding='utf-8') as f:f.write(md_str)print(f"已保存到: {full_path}")
# 异步抓取网页内容
async def main(output_filename):# 创建爬虫对象,自动管理资源(确保爬虫使用完后会自动关闭,释放资源)async with AsyncWebCrawler() as crawler:# 访问指定网址并等待响应(await 关键字表示等待这个操作完成后再继续执行下面的代码)result = await crawler.arun("https://www.anthropic.com/news/agent-capabilities-api")# 打印抓取结果print("Markdown length:", len(result.markdown))print(result.markdown[:300])# 保存到.md文件output_md(output_filename, result.markdown)# 启动异步程序
asyncio.run(main('1_1_Basic.md'))
PS E:\AI-lab\n8n> & D:/anaconda3/envs/crawl4ai-python311/python.exe e:/AI-lab/n8n/crawl4ai-1.py
[INIT].... → Crawl4AI 0.6.3 
[FETCH]... ↓ https://www.anthropic.com/news/agent-capabilities-api                                                || ⏱: 3.40s 
[SCRAPE].. ◆ https://www.anthropic.com/news/agent-capabilities-api                                                || ⏱: 0.03s 
[COMPLETE] ● https://www.anthropic.com/news/agent-capabilities-api                                                || ⏱: 3.43s
Markdown length: 10941
[Skip to main content](https://www.anthropic.com/news/agent-capabilities-api#main-content)[Skip to footer](https://www.anthropic.com/news/agent-capabilities-api#footer)
[](https://www.anthropic.com/)* Claude* API* Solutions* Research* Commitments* Learn
[News](https://www.anthropic
已保存到: ./outputs/markdown/1_1_Basic(10941).md
http://www.dtcms.com/a/257300.html

相关文章:

  • 【项目管理】项目管理资料文档模板(ZIP,PPT,WORD)
  • 国产免费的k8s管理平台
  • 测试设计方法:正交试验原理分析与实践
  • Maven 之 JUnit 测试体系构建全解析
  • JS 大整数相加
  • Matlab自学笔记六十:符号表达式的缩写和简化
  • VitePress搭建静态博客
  • 一文汇总电子电气架构的成本优化方向
  • 关于华为Pura70Pro+升级鸿蒙NEXT和回退
  • 艾立泰数字化重塑汽车零部件包装租赁行业
  • Chromium 136 编译指南 macOS篇:编译优化技巧(六)
  • 【Linux学习笔记】进程间通信之共享内存
  • C# SolidWorks二次开发-实战2,解决SolidWorks2024转step文件名乱码问题
  • 从二维到三维:ArcGIS Pro与Aerialod联合制作三维人口密度分布图
  • Vue2 day04
  • xlsx-style 插件批量导出多个sheet表格excel中遇到的问题及解决
  • 微服务链路追踪在生产环境问题定位中的实战经验
  • Windows电脑数据恢复终极指南:从原理到实战
  • 七层网络模型与电脑通信比喻
  • 基于 Docker 的服务部署探索(Day 2)
  • 从语言到生态:编程语言在各行业的应用格局与未来演进
  • 编程语言的设计之道:从底层控制到表达自由
  • SPL 实践系列:跨库移植 SQL
  • redis如何使用IO多路复用
  • 【C++项目】基于IPV4的流媒体广播
  • 从java角度理解io多路复用和redis为什么使用io多路复用
  • Java性能优化权威指南-操作系统性能监控
  • HarmonyOS NEXT应用元服务布局优化ArkUI框架执行流程
  • 大数据时代UI前端的变革:从静态展示到动态交互
  • 品牌控价需要数据支撑与高效治理双驱动