سؤال

أنا أكتب الزاحف في بيرل ، التي لاستخراج محتويات صفحات الويب الموجودة على نفس الخادم.أنا حاليا باستخدام HTML::استخراج وحدة للقيام بهذه المهمة, ولكن وجدت وحدة بطيئة بعض الشيء ، لذا بحثت في التعليمات البرمجية المصدر و اكتشفت أنها لا تستخدم أي اتصال ذاكرة التخزين المؤقت LWP::وكيل المستخدم.

الملاذ الأخير هو الاستيلاء HTML::Extract's البرمجية المصدر و تعديل استخدام ذاكرة التخزين المؤقت, ولكن أنا حقا أريد أن تجنب ذلك إذا كنت تستطيع.لا أحد يعرف أي وحدة التي يمكن أن تؤدي نفس العمل أفضل ؟ أنا في الأساس تحتاج إلى الاستيلاء على جميع النص في <body> العنصر مع علامات HTML إزالتها.

هل كانت مفيدة؟

نصائح أخرى

وميزات HTML::Extract وتبدو <م> جدا الأساسية ورتيبا. إذا كانت الوحدات التي draegfun المذكورة لا مصلحة لك، يمكنك أن تفعل كل ما HTML::Extract لا تستخدم LWP::UserAgent وHTML::TreeBuilder نفسك، دون الحاجة إلى الكثير جدا التعليمات البرمجية في كل شيء، وبعد ذلك ستكون حرة للعمل في التخزين المؤقت على الشروط الخاصة بك.

ولقد تم استخدام الويب :: مكشطة للحصول على احتياجات إلغاء بلدي. انها لطيفة جدا في الواقع لاستخراج البيانات، ولأن يمكنك الاتصال ->scrape($html, $originating_uri) ثم فإنه من السهل جدا لتخزين النتيجة التي تحتاج إليها كذلك.

هل تحتاج إلى القيام بذلك في الوقت الحقيقي؟ كيف يمكن عدم كفاءة تؤثر عليك؟ تفعل هذه المهمة بشكل متسلسل بحيث يكون لديك لاستخراج صفحة واحدة قبل الانتقال إلى المرحلة التالية؟ لماذا كنت ترغب في تجنب مخبأ؟

هل زاحف الخاص بك تحميل الصفحات وتمرير أجبرتها على الفرار إلى شيء آخر؟ ربما زاحف الخاص بك يمكن تشغيل حتى في موازاة ذلك، أو بطريقة توزيعها.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top