网站制作公司有哪些证,江阴青阳道路建设网站,全网推广的方式,网站建设开发人员配置开源地址#xff1a;https://github.com/mendableai/firecrawl
01、FireCrawl 项目简介
Firecrawl 是一款开源、优秀、尖端的 AI 爬虫工具#xff0c;专门从事 Web 数据提取#xff0c;并将其转换为 Markdown 格式或者其他结构化数据。
Firecrawl 还特别上线了一个新的功…开源地址https://github.com/mendableai/firecrawl
01、FireCrawl 项目简介
Firecrawl 是一款开源、优秀、尖端的 AI 爬虫工具专门从事 Web 数据提取并将其转换为 Markdown 格式或者其他结构化数据。
Firecrawl 还特别上线了一个新的功能LLM Extract即利用大语言模型LLM快速完成网页数据的提取从而转换为LLM-ready的数据。
所以无论你是需要为大语言模型如 GPT提供数据训练还是需要为检索增强生成RAG获取高质量数据FireCrawl 都能够为你提供全面的支持。
02、主要功能
• 强大的抓取能力几乎能抓取任何网站的内容无论是简单的静态页面还是复杂的动态网页它都能够应对自如。 • 智能的爬取状态管理提供了分页、流式传输等功能使得大规模网页抓取变得更加高效。此外它还具备清晰的错误提示功能让你在爬取过程中可以快速排查问题保证数据抓取的顺利进行。 • 多样的输出格式不仅支持将抓取的内容转换为 Markdown 格式还支持将其输出为结构化数据如 JSON。 • 增强 Markdown 解析优化 Markdown 解析逻辑能够输出更干净、更高质量的文本。 • 全面的 SDK 支持提供了丰富的 SDK支持多种编程语言如 Go、Rust 等并全面兼容 v1 API。 • 快速收集相关链接新增了/map 端点可以快速收集网页中的相关链接。这对于需要抓取大量相关内容的用户来说是一个极其高效的功能。 03、FireCrawl应用场景
1. 大语言模型训练 通过抓取海量网页内容并将其转换为结构化数据FireCrawl 能够为大语言模型如 GPT提供丰富的训练数据。
这对于希望提升模型表现的开发者或企业来说FireCrawl 是一个理想的工具。
2. 检索增强生成RAG FireCrawl 可以帮助用户从不同网页中获取相关数据支持检索增强生成RAG任务。这意味着你可以通过 FireCrawl 获取并整理数据用于生成更加精确、更加丰富的文本内容。
3. 数据驱动的开发项目 如果你的项目依赖大量的网页数据比如训练语言模型、构建知识图谱、数据分析等等FireCrawl 是一个不二之选。
它可以帮助你快速获取所需数据并将其转换为你需要的格式无论是 Markdown 还是 JSON都能轻松搞定。
4. SEO 与内容优化 对于那些需要进行 SEO 优化或内容监控的项目FireCrawl 也非常适用。
你可以利用 FireCrawl 爬取竞争对手的网站内容分析他们的 SEO 策略或者监控网站内容的变化帮助你优化自己的网站。
5. 在线服务与工具集成 FireCrawl 提供了易于使用且统一的 API支持本地部署或在线使用。
你可以将 FireCrawl 无缝集成到现有的服务或工具中如 Langchain、Dify、Flowise 等进一步扩展其应用能力。
04、安装与使用
当然 FireCrawl 是支持本地部署的通过源码进行部署安装服务但是依赖的语言过多不仅有Nodejs、Python还有Rust还是建议在线体验 使用方式
官方项目中列了很多通过curl接口命令的方式其实这样就有些繁琐
我们可以通过各种API工具来进行请求使用体验会更好一些。
也可以通过官方部署的网页上功能来进行效果会更加
最后就是开发者常用的SDK方式这里以Python语言为例
• 安装 Python SDK 代码语言javascript
pip install firecrawl-py • 调用接口抓取目标网页数据 代码语言javascript
from firecrawl import FirecrawlApp
app FirecrawlApp(api_keyYOUR_API_KEY)
crawl_result app.crawl_url(mendable.ai, {crawlerOptions: {excludes: [blog/*]}})
# Get the markdown for result in crawl_result: print(result[markdown]) • 要抓取单个 URL需要使用 scrape_url 方法。将 URL 作为参数并以字典形式返回抓取的数据。 代码语言javascript
url https://www.xxxx.com scraped_data app.scrape_url(url) 05、总结
作为一名开发者我们都知道一个好用的工具可以大大提高我们的工作效率而 FireCrawl 就是这样一个值得推荐的工具。
无论你是需要爬取大量数据还是需要将网页内容转换为文档FireCrawl 都能够帮助你轻松实现这些需求。 六、本地部署方式
配置.env文件
# .env# Required ENVS
NUM_WORKERS_PER_QUEUE8
PORT3002
HOST0.0.0.0#for self-hosting using docker, use redis://redis:6379. For running locally, use redis://localhost:6379
REDIS_URLredis://redis:6379#for self-hosting using docker, use redis://redis:6379. For running locally, use redis://localhost:6379
REDIS_RATE_LIMIT_URLredis://redis:6379
PLAYWRIGHT_MICROSERVICE_URLhttp://playwright-service:3000/html## To turn on DB authentication, you need to set up supabase.
USE_DB_AUTHENTICATIONfalse# Optional ENVS # Supabase Setup (used to support DB authentication, advanced logging, etc.)
SUPABASE_ANON_TOKEN
SUPABASE_URL
SUPABASE_SERVICE_TOKEN# Other Optionals
# use if youve set up authentication and want to test with a real API key
TEST_API_KEY
# set if youd like to test the scraping rate limit
RATE_LIMIT_TEST_API_KEY_SCRAPE
# set if youd like to test the crawling rate limit
RATE_LIMIT_TEST_API_KEY_CRAWL
# set if youd like to use scraping Be to handle JS blocking
SCRAPING_BEE_API_KEY
# add for LLM dependednt features (image alt generation, etc.)
OPENAI_API_KEY
BULL_AUTH_KEY
# use if youre configuring basic logging with logtail
LOGTAIL_KEY
# set if you have a llamaparse key youd like to use to parse pdfs
LLAMAPARSE_API_KEY
# set if youd like to send slack server health status messages
SLACK_WEBHOOK_URL
# set if youd like to send posthog events like job logs
POSTHOG_API_KEY
# set if youd like to send posthog events like job logs
POSTHOG_HOST# set if youd like to use the fire engine closed beta
FIRE_ENGINE_BETA_URL# Proxy Settings for Playwright (Alternative you can can use a proxy service like oxylabs, which rotates IPs for you on every request)
PROXY_SERVER
PROXY_USERNAME
PROXY_PASSWORD
# set if youd like to block media requests to save proxy bandwidth
BLOCK_MEDIA# Set this to the URL of your webhook when using the self-hosted version of FireCrawl
SELF_HOSTED_WEBHOOK_URL# Resend API Key for transactional emails
RESEND_API_KEY# LOGGING_LEVEL determines the verbosity of logs that the system will output.
# Available levels are:
# NONE - No logs will be output.
# ERROR - For logging error messages that indicate a failure in a specific operation.
# WARN - For logging potentially harmful situations that are not necessarily errors.
# INFO - For logging informational messages that highlight the progress of the application.
# DEBUG - For logging detailed information on the flow through the system, primarily used for debugging.
# TRACE - For logging more detailed information than the DEBUG level.
# Set LOGGING_LEVEL to one of the above options to control logging output.
LOGGING_LEVELINFO进入目录安装部署
docker compose up -d 部署完后访问http://localhost:3002/test
只要返回响应是 Hello, world! 就表明本地 Firecrawl 启动成功了。