در این صفحه
در این صفحه
Tools
واکشی وب
web_fetch یک درخواست ساده HTTP GET انجام میدهد و محتوای خوانا را استخراج میکند (HTML به
markdown یا متن). این ابزار JavaScript را اجرا نمیکند. برای سایتهای متکی به JS یا
صفحههای محافظتشده با ورود، بهجای آن از مرورگر وب استفاده کنید.
شروع سریع
بهطور پیشفرض فعال است و به پیکربندی نیاز ندارد:
پارامترهای ابزار
urlstringrequiredURL برای واکشی. فقط http(s).
extractMode'markdown' | 'text'default: markdownقالب خروجی پس از استخراج محتوای اصلی.
maxCharsnumberخروجی را به این تعداد نویسه برش میدهد. به tools.web.fetch.maxCharsCap محدود میشود.
نتیجه
web_fetch یک نتیجه ساختیافته بسته با این فیلدها برمیگرداند:
- فراداده درخواست:
url،finalUrl،status،extractModeوextractor - فراداده اختیاری پاسخ:
contentType،titleوwarning(در صورت نبودن حذف میشوند) - فراداده محتوای پوششدادهشده:
externalContent،truncated،length،rawLength،fetchedAt،tookMsوtext cached: trueاختیاری هنگام اصابت به کشspill: { path, chars, truncated? }اختیاری هنگامی که محتوای برشخورده در یک فایل موقت خصوصی نوشته شده باشد؛truncatedفقط زمانی وجود دارد که آن فایل حاوی بخشی از محتوای منبع باشد
length طول text پوششدادهشده است. rawLength طول محتوای استخراجشده
پیش از پوششدهی محتوای خارجی است.
نحوه کار
واکشی
یک درخواست HTTP GET با User-Agent مشابه Chrome و هدر Accept-Language
ارسال میکند. نامهای میزبان خصوصی/داخلی را مسدود میکند و تغییرمسیرها را دوباره بررسی میکند.
استخراج
Readability (استخراج محتوای اصلی) را روی پاسخ HTML اجرا میکند.
مسیر جایگزین (اختیاری)
اگر Readability ناموفق باشد و یک ارائهدهنده واکشی در دسترس باشد، درخواست را از طریق آن ارائهدهنده دوباره امتحان میکند (برای مثال، حالت دور زدن ربات Firecrawl).
کش
نتایج برای 15 دقیقه (قابل پیکربندی) کش میشوند تا واکشیهای تکراری همان URL کاهش یابد.
بهروزرسانیهای پیشرفت
web_fetch فقط زمانی یک خط عمومی پیشرفت منتشر میکند که واکشی پس از
پنج ثانیه همچنان در انتظار باشد:
اصابتهای سریع به کش و پاسخهای سریع شبکه پیش از فعالشدن زمانسنج پایان مییابند، بنابراین هرگز خط پیشرفت را نشان نمیدهند. لغو فراخوانی، زمانسنج را پاک میکند. خط پیشرفت فقط وضعیت رابط کاربری کانال است و هرگز محتوای واکشیشده صفحه را در بر نمیگیرد.
پیکربندی
مسیر جایگزین Firecrawl
اگر استخراج Readability ناموفق باشد، web_fetch میتواند برای
دور زدن ربات و استخراج بهتر از Firecrawl بهعنوان مسیر جایگزین استفاده کند:
plugins.entries.firecrawl.config.webFetch.apiKey اختیاری است و از اشیای SecretRef پشتیبانی میکند.
پیکربندی قدیمی tools.web.fetch.firecrawl.* از طریق openclaw doctor --fix بهطور خودکار به
plugins.entries.firecrawl.config.webFetch مهاجرت میکند.
رفتار فعلی زمان اجرا:
tools.web.fetch.providerارائهدهنده مسیر جایگزین واکشی را بهصراحت انتخاب میکند.- اگر
providerحذف شود، OpenClaw نخستین ارائهدهنده آماده واکشی وب را بهطور خودکار از اعتبارنامههای پیکربندیشده تشخیص میدهد.web_fetchخارج از sandbox میتواند از Pluginهای نصبشدهای استفاده کند کهcontracts.webFetchProvidersرا اعلام میکنند و یک ارائهدهنده منطبق را هنگام اجرا ثبت میکنند. Plugin رسمی Firecrawl در حال حاضر این مسیر جایگزین را فراهم میکند. - فراخوانیهای
web_fetchدر sandbox، ارائهدهندگان همراه و نیز ارائهدهندگان نصبشدهای را مجاز میکنند که منشأ رسمی npm یا ClawHub آنها تأیید شده باشد. در حال حاضر، این وضعیت Plugin رسمی Firecrawl را مجاز میکند؛ Pluginهای واکشی خارجی شخص ثالث همچنان مستثنا هستند. - اگر Readability غیرفعال باشد،
web_fetchمستقیماً به مسیر جایگزین ارائهدهنده انتخابشده میرود. اگر هیچ ارائهدهندهای در دسترس نباشد، بهصورت بسته ناموفق میشود.
پروکسی محیطی مورد اعتماد
اگر استقرار شما مستلزم عبور web_fetch از یک پروکسی خروجی
HTTP(S) مورد اعتماد است، tools.web.fetch.useTrustedEnvProxy: true را تنظیم کنید.
در این حالت، OpenClaw همچنان پیش از ارسال درخواست بررسیهای SSRF مبتنی بر نام میزبان را اعمال میکند، اما بهجای سنجاقکردن محلی DNS، به پروکسی اجازه تفکیک DNS میدهد. این گزینه را فقط زمانی فعال کنید که پروکسی تحت کنترل اپراتور باشد و پس از تفکیک DNS، سیاست خروجی را اعمال کند.
محدودیتها و ایمنی
maxCharsبهtools.web.fetch.maxCharsCap(پیشفرض20000) محدود میشود- بدنه پاسخ پیش از تجزیه به
maxResponseBytes(پیشفرض750000، محدودشده به 32000-10000000) محدود میشود؛ پاسخهای بیشازحد بزرگ با یک هشدار برش میخورند - نامهای میزبان خصوصی/داخلی مسدود میشوند
tools.web.fetch.ssrfPolicy.allowRfc2544BenchmarkRangeوtools.web.fetch.ssrfPolicy.allowIpv6UniqueLocalRangeفعالسازیهای اختیاری محدودی برای پشتههای پروکسی IP جعلی مورد اعتماد هستند؛ مگر اینکه پروکسی شما مالک آن محدودههای مصنوعی باشد و سیاست مقصد خود را اعمال کند، آنها را تنظیم نکنید- تغییرمسیرها بررسی میشوند و بهوسیله
maxRedirects(پیشفرض3) محدود میشوند useTrustedEnvProxyیک فعالسازی اختیاری صریح است و فقط باید برای پروکسیهای تحت کنترل اپراتور فعال شود که پس از تفکیک DNS همچنان سیاست خروجی را اعمال میکنندweb_fetchبر مبنای بهترین تلاش عمل میکند -- برخی سایتها به مرورگر وب نیاز دارند
پروفایلهای ابزار
اگر از پروفایلها یا فهرستهای مجاز ابزار استفاده میکنید، web_fetch یا group:web را اضافه کنید:
مرتبط
- جستوجوی وب -- جستوجوی وب با چندین ارائهدهنده
- مرورگر وب -- خودکارسازی کامل مرورگر برای سایتهای متکی به JS
- Firecrawl -- ابزارهای جستوجو و استخراج Firecrawl