
أداة سريعة لجلب عناوين URL من سمات HTML عن طريق crawl-in.
__
__ _ _(_ ) __ _ __
/'_ '\/'_' )| | /'__'( '__)
( (_) ( (_| || |( ___| |
'\__ '\__,_(___'\____(_)
( )_) |
\___/' @dwisiswant0
أداة سريعة لجلب عناوين URL من سمات HTML عبر الزحف. مستوحاة من تغريدة @omespino، والتي تتيح استخراج قيم src وhref وurl وaction من خلال تقييم JavaScript عبر بروتوكول أدوات مطوري Chrome.
التثبيت سهل. يمكنك تنزيل ملف ثنائي مُجمّع مسبقاً من صفحة الإصدارات، فك الضغط وتشغيله! أو باستخدام:
▶ (sudo) curl -sSfL https://git.io/galer | sh -s -- -b /usr/local/bin
إذا كان لديك مُجمّع go1.22+ مثبتاً ومُهيأً:
▶ go install -v github.com/dwisiswant0/galer@latest
▶ git clone https://github.com/dwisiswant0/galer
▶ cd galer
▶ go build .
▶ (sudo) install galer /usr/local/bin
ببساطة، يمكن تشغيل galer باستخدام:
▶ galer -u "http://domain.tld"

هذا يعرض المساعدة الخاصة بالأداة. فيما يلي جميع الخيارات التي تدعمها.
$ galer -h
__ v0.2.0
__ _ _(_ ) __ _ __
/'_ '\/'_' )| | /'__'( '__)
( (_) ( (_| || |( ___| |
'\__ '\__,_(___'\____(_)
( )_) |
\___/' @dwisiswant0
أداة سريعة لجلب عناوين URL من سمات HTML عبر الزحف
الاستخدام:
galer -u [URL|URLs.txt] -o [output.txt]
الخيارات:
-u, --url <URL/FILE> الهدف المراد الجلب منه (رابط واحد أو قائمة)
-e, --extension <EXT> إظهار امتدادات معينة فقط (مفصولة بفواصل، مثل js,php)
-c, --concurrency <N> مستوى التزامن (الافتراضي: 50)
-w, --wait <N> الانتظار لمدة N ثانية قبل التقييم (الافتراضي: 1)
-d, --depth <N> أقصى عمق للزحف (مستويات الروابط التي سيتم متابعتها)
--same-host نفس المضيف فقط
--same-root نفس الجذر (eTLD+1) فقط (له أولوية على --same-host)
-o, --output <FILE> حفظ مخرجات عناوين URL المجلوبة في ملف
-T, --template <string> تنسيق قالب المخرجات (مثال: "{{scheme}}://{{host}}{{path}}")
المتغيرات الصالحة هي: "raw_url", "scheme", "user", "username",
"password", "host", "hostname", "port", "path", "raw_path",
"escaped_path", "raw_query", "fragment", "raw_fragment".
-t, --timeout <N> أقصى وقت (بالثواني) مسموح للاتصال (الافتراضي: 60)
-s, --silent الوضع الصامت (كتم الأخطاء)
-v, --verbose الوضع المفصّل يعرض تفاصيل الأخطاء ما لم تستخدم الصامت
-h, --help عرض المساعدة
▶ galer -u "http://domain.tld"
▶ galer -u /path/to/urls.txt
▶ cat urls.txt | galer
في حال رغبت في الربط مع أدوات أخرى:
▶ subfinder -d domain.tld -silent | httpx -silent | galer
يمكنك استخدام galer كمكتبة.
▶ go get github.com/dwisiswant0/galer/pkg/galer@latest
مثال:
package main
import (
"fmt"
"github.com/dwisiswant0/galer/pkg/galer"
)
func main() {
cfg := &galer.Config{
Timeout: 60,
}
cfg = galer.New(cfg)
run, err := cfg.Crawl("https://twitter.com")
if err != nil {
panic(err)
}
for _, url := range run {
fmt.Println(url)
}
}
إذا كنت لا تزال مرتبكاً أو وجدت خطأً، يرجى فتح مشكلة. جميع تقارير الأخطاء موضع تقدير، بعض الميزات لم تُختبر بعد بسبب نقص وقت الفراغ.
[!CAUTION] لم تصل galer إلى الإصدار 1.0 بعد. لذلك، هذه المكتبة غير مدعومة حالياً ولا تقدم واجهة برمجة تطبيقات مستقرة؛ استخدمها على مسؤوليتك الخاصة.
لا توجد ضمانات للاستقرار لواجهات برمجة التطبيقات في هذه المكتبة، وعلى الرغم من أنه من غير المتوقع أن تتغير بشكل جذري، فقد تحدث تعديلات في واجهات API وإصلاحات للأخطاء.
id_ID • /gäˈlər/ — kalau galer jangan dicium baunya, langsung cuci tangan, bego!
sebel صدر بواسطة @dwisiswant0 بموجب ترخيص MIT. راجع LICENSE.