نسخة الكود كما يلي:
استيراد java.io.bufferedreader ؛
استيراد java.io.ioException ؛
استيراد java.io.inputstreamreader ؛
استيراد java.net.malformedurlexception ؛
استيراد java.net.url ؛
استيراد java.util.arraylist ؛
استيراد java.util.hashmap ؛
استيراد java.util.list ؛
استيراد java.util.regex.matcher ؛
استيراد java.util.regex.pattern ؛
استيراد java.net.*؛
استيراد java.io.*؛
استيراد java.util.regex.*؛
/*
الحصول على القاعدة المحددة عن طريق بناء تعبيرات منتظمة
*/
عناوين URL للطبقة العامة
{
سلسلة خاصة
سلسلة urlcontent.
سلسلة المحتوى ؛
StrareAbegin ، Strareaend ؛
سلسلة خاصة StringInurl ، StringNotinurl ؛
String strcontent ؛ // المحتوى الذي تم جمعه تم الحصول عليه
سلسلة [] allurls ؛
سلسلة خاصة Regex ؛
urlandtitle urlandtitle = New Urlandtitle () ؛
الفراغ الثابت العام (سلسلة [] args)
{
urls myurl = url new ("<body" ، "/body>") ؛
myurl.getStarturl ("http://www.zuzwn.com/") ؛
myurl.geturlContent () ؛
myurl.getContentArea () ؛
myurl.getStarturl ("http://www.zuzwn.com/") ؛
myurl.getStringNotinurl ("Google") ؛
myurl.urls () ؛
//system.out.println("starturl:"+myurl.starturl) ؛
//system.out.println("urlcontent:"+myurl.urlcontent) ؛
//system.out.println("contentarea:"+myurl.contentarea) ؛
}
// تهيئة المُنشئين من الطبقات والضوايا
عناوين URL العامة (سلسلة Strareabegin ، String Strareaend)
{
this.straraebegin = strareabegin ؛
this.strareaend = strareaend ؛
}
//
عناوين URL الخاصة بالفراغ العام ()
{
int i = 0 ؛
// string regex = "<a href ="؟ '؟ http: // [a-za-z0-9]+/. [a-za-z0-9]+/. [a-za-z]+ /؟ budap/.؟ budap/s|/s/2010 budapa> //2010 ؛
String regex = "<a.*؟/a>" ؛
// string regex = "http: //.*؟>" ؛
نمط pt = pattern.compile (regex) ؛
Matcher Mt = Pt.Matcher (contentarea) ؛
بينما (Mt.Find ())
{
system.out.println (mt.group ()) ؛
i ++ ؛
// احصل على العنوان
Matcher title = pattern.compile (">.*؟ </a>") .Matcher (Mt.Group ()) ؛
بينما (title.find ())
{
System.out.println ("title:"+title.group (). replaceall ("> | </a>" ، "")) ؛
}
// احصل على عنوان URL
matcher myurl = pattern.compile ("href =.*؟>"). matcher (mt.group ()) ؛
بينما (myurl.find ())
{
System.out.println ("موقع الويب:"+myurl.group (). replaceall ("href = |>" ، "")) ؛
}
System.out.println () ؛
}
System.out.println ("هناك إجماليات"+i+"نتائج متوافقة") ؛
}
// احصل على موقع START Collection
public void getStarturl (String Starturl)
{
this.starturl = starturl ؛
}
// احصل على المحتوى الذي يوجد فيه عنوان URL ؛
الفراغ العام geturlcontent ()
{
StringBuffer هو = جديد stringBuffer () ؛
يحاول
{
url myurl = url جديد (starturl) ؛
BufferedReader BR = جديد BufferedReader (
new inputStreamReader (myurl.openstream ())) ؛
سلسلة S ؛
بينما ((s = br.readline ())! = null)
{
IS.Append (s) ؛
}
urlContent = is.toString () ؛
}
الصيد (استثناء ه)
{
System.out.println ("فشل ملف url في الإخراج") ؛
E.PrintStackTrace () ؛
}
}
// احصل على منطقة المطابقة حيث يوجد عنوان URL
الفراغ العام getContentarea ()
{
int pos1 = 0 ، pos2 = 0 ؛
pos1 = urlContent.indexof (strareabegin)+strareabegin.length () ؛
pos2 = urlContent.indexof (strareaend ، pos1) ؛
contentarea = urlContent.subString (pos1 ، pos2) ؛
}
// تحصل الوظيفين التاليتين على الكلمات الرئيسية التي يجب أن تحتوي عليها عنوان URL والكلمات الرئيسية التي لا يمكن تضمينها
// فقط تجارب أولية يتم ذلك هنا. في المرحلة اللاحقة ، يجب أن يكون هناك أكثر من كلمة رئيسية محمية وكلمة رئيسية لا يمكن تضمينها.
public void getStringInurl (String stringInurl)
{
this.stringInurl = stringInurl ؛
}
void public getTringNotinurl (String stringNotinurl)
{
this.StringNotinurl = stringNotinurl ؛
}
// احصل على قواعد التجميع
// احصل على عنوان URL
الفراغ العام geturl ()
{
}
السلسلة العامة getRegex ()
{
إرجاع regex.
}
فئة أورلانتيتل
{
سلسلة myurl.
عنوان السلسلة ؛
}
}