ورود

View Full Version : خواندن محتویات صفحات وب



Ebrahimkh
شنبه 21 تیر 1393, 00:15 صبح
سلام دوستان یه سوالی که ذهن بنده رو الان چند روزه درگیر خودش کرده اینه که می خوام
محتویات یه صفحه ی وب رو بخونم ولی نمیدونم چه جوری این کار رو انجام بدهم


---------------------------------------
در کل می خوام بدون تگ html این کار صورت بگیره یعنی فقط محتویاتش رو می خوام اصلا تگ تو خروجی برنامه نباشه

-----------------------------------------

سپاسگذارم./

vahid-p
شنبه 21 تیر 1393, 11:46 صبح
چون در یک صفحه html ممکنه کدهای مختلفی مثل جاوا اسکریپت و css و... وجود داشته باشه، کار نسبتا سختیه. از طرفی اونقدر نمیشه به tag ها < , /> و body و... اعتماد کرد چون در HTML حتی اگر فرم نوشتاری زیاد درست نباشه بازم خروجی خواهید گرفت.

پس نیاز به کتابخونه هایی دارید که فایل html رو تقریبا مثل خود مرورگر پردازش کنند.

کتابخونه ای استاندارد ( یعنی جز خود java se ) براش سراغ ندارم ولی کتابخونه های مختلفی مثل Jsoup , Apache Tika , Boilerpipe ,... وجود داره. شما میتونید از Jsoup استفاده کنید و این لینک راهنماییتون میکنه :
Jsoup , Apache Tika : http://www.rgagnon.com/javadetails/java-0424.html
( در پرانتز : در لینک بالا، regular expression , HTMLEditorKit رو تست کردم HTMLEditorKit ( از کتابخونه استاندارد خود جاوا ) بدک نبود و رو بعضی سورس ها خوب جواب میداد، ولی بازم رو بعضی سورسها کدهایی که نباید نشون میداد رو نشون میده پس بهتره فقط از کتابخونه ها استفاده کنی )
Boilerpipe : http://stackoverflow.com/questions/7021260/how-can-i-extract-only-the-main-textual-content-from-an-html-page