الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال: قراءة تاق Html + النص اللي داخلها

مغلق
بدأه دمعة وفاء في 10 ديسمبر 2007 · 5 رد · 973 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

سؤالي صعب ويحتاج ناس محترفين

أبي أقرأ جميع التاقات التي في ملف HTML

وأطبع أسمها وقيمتها

مثل:

<H1> title </H1>

يطبع

H1 :

Title

وهكذا

أنا حاولت فيه بس ماقدرت آخذ غير مستوى واحد

يعني لما يكون المستند متشابك مع بعض مايطلع لي شي

أتمنى تساعدوني في القريب العاجل

#2

مبدئيا ممكن تعاملى ملف HTML كstream و تقرأيه سطر سطر و تضعيه فى متغير string و عن طريق الدوال بتاعتclass string و خصوصا

LastIndxOf

substring

لنحصل على ما بين ال tages

دى الفكرة العامة اللى جت فى بالى دلوقتى اتمنى تكون فادتك

#3

بسم الله السميع العليم

اذا افترضت ان لديك WebBrowser بإسم webBrowser1 وفيه صفحة انترنت مفتوحة و المارد اخراج جميع التاجات التي تحتويها الصفحة مع النصوص في كل تاج و توضع لنقل في listBox1 فإن شيئا كالتالي سيفي بالغرض بإذن الله تعالى:

foreach (HtmlElement ele in webBrowser1.Document.All)
{
	 listBox1.Items.Add(ele.TagName + ": " + ele.InnerText);
}

السلام عليكم و رحمة الله و بركاته

مواضيع برمجية تقنية جديدة

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

• إستغلال خدمة الـ RSS في برامجنا ومواقعنا ! (VB.NET)

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

• برنامج للبحث في الملفات ومحتواياتها (VB.NET)

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

• فئة للتراسل بين برنامجين في جهاز واحد ! (VB.NET)

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

مواضيع برمجية تقنية قديمة

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

• إستغلال رسائل البالونات Balloons في الوينذوز أكس بي(VB.NET)

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

• مقالة : لماذا يجب ان نعتني بشفرات برامجنا !؟- (VB6.0)

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

• لمطوري البرامج و مواقع الويب - برنامج تركيب ألوان - (VB6.0)

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

• برنامج : بسيط للتحكم بالنظام, عن طريق الريجستري - (VB6.0)

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

• برنامج : لتقييد و منع تشغيل البرامج الاخرى - (VB6.0)

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

• النوافذ المنبثقة و طريقة لإستغلالها في برامجنا -(VB.NET)

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

• تقنية الإستدعاء الذاتي - (VB.NET , VB6.0)

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

• مصفوفات الأدوات Control Arrays افكار وتلميحات ! - (VB.NET)

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

• أفكار و تلميحات[ المعنى الحقيقي للـ True و False ] - أمثلة (VB.NETVB6.0)

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

• دوال الـ APIs و مايقابلها في الدوت نت ! - (VB.NET)

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

#4

رغيد الطيب

أنا أعرف طريقه مشابهه لما ذكرت

لكن ماذا لو كان لدينا مستند معقد مثل...

<html>
  <body>
	<h1><font color="#FF0000">Extraction Information From HTML Files</font></h1>
<p>----------------------------------------------------- Paragraph 
1--------------------------------------------------</p>
	<h2>HTML1:</h2>
 <p><u><i><b>For Example</b></i></u></p>
	<p>----------------------------------------------------- Paragraph 
 2--------------------------------------------------</p>
 <h3>sub title1</h3>
 <p>----------------------------------------------------- Paragraph 
 1--------------------------------------------------</p>
 <h3>sub title2</h3>
 <p>----------------------------------------------------- Paragraph 
 2--------------------------------------------------</p>
	<h2>HTML2:</h2>
 <p><font color="#0000FF"><u><i><b>For Example</b></i></u></font></p>
	<p>----------------------------------------------------- Paragraph 
 3--------------------------------------------------</p>
  </body>
</html>

وأردنا أن نصل إلى معلومات بالشكل التالي:

اقتباس
Title:Red:

(Extraction Information From HTML Files)

paragraph:

(----------------------------------------------------- Paragraph 1--------------------------------------------------)

1.Subtitle:

(HTML1:)

paragraph:BOLD:ITALIC:UNDERLINE:

(For Example)

paragraph:

(----------------------------------------------------- Paragraph 2--------------------------------------------------)

1.1.Subtitle:

(sub title1)

paragraph:

(----------------------------------------------------- Paragraph 1--------------------------------------------------)

1.2.Subtitle:

(sub title2)

paragraph:

(----------------------------------------------------- Paragraph 2--------------------------------------------------)

2.Subtitle:

(HTML2:)

paragraph:BOLD:ITALIC:UNDERLINE:BULE

(For Example)

paragraph: (----------------------------------------------------- Paragraph 1--------------------------------------------------)

تم تعديل هذه المشاركة بواسطة دمعة وفاء في 13 ديسمبر 2007 في 02:27

#5

السلام عليكم و رحمة الله و بركاته

في هذه الحالة يكون الطلب مخصص الى درجة كبيرة و ينبغي مراعة الاحتمالات الواردة بحدر شديد وذلك ممكن في حالة كون ملف الـ HTML تنسيقه معروف مسبقا بحيث تتم معالجة كل احتمال على حده.

على العموم سأضع هنا مدخل للأمر .. بفرض كون الفورم تحتوي على webBowser1 فيه صفحة الـ HTML السابقة ... و TextBox بإسم textBox1 وفيه الخاصية Multiline=True و الخاصية ScrollBars = Vertical ... الكود سيكون مشابه للتالي :

			int h1 = 0, h2 = 0, h3 = 0;

			foreach (HtmlElement ele in this.webBrowser1.Document.All)
			{
				switch (ele.TagName.ToLower())
				{
					case "h1":
						h1++;
						textBox2.Text += "Title:\r\n(" + ele.InnerText + ")\r\n\r\n"; 
						break;
					case "h2":
						h2++;
						textBox2.Text += h2.ToString() + ".subTitle:\r\n(" + ele.InnerText + ")\r\n\r\n";
						break;
					case "h3":
						h3++;
						textBox2.Text += h2.ToString() +"." + h3.ToString() + ".subTitle:\r\n(" + ele.InnerText + ")\r\n\r\n";
						break;
					case "p":
						textBox2.Text += "Paragraph:\r\n(" + ele.InnerText + ")\r\n\r\n";
						break;
				}
			}

اتمنى ان يفيد ذلك في اكمال المسيرة

السلام عليكم

مواضيع برمجية تقنية جديدة

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

• إستغلال خدمة الـ RSS في برامجنا ومواقعنا ! (VB.NET)

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

• برنامج للبحث في الملفات ومحتواياتها (VB.NET)

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

• فئة للتراسل بين برنامجين في جهاز واحد ! (VB.NET)

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

مواضيع برمجية تقنية قديمة

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

• إستغلال رسائل البالونات Balloons في الوينذوز أكس بي(VB.NET)

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

• مقالة : لماذا يجب ان نعتني بشفرات برامجنا !؟- (VB6.0)

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

• لمطوري البرامج و مواقع الويب - برنامج تركيب ألوان - (VB6.0)

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

• برنامج : بسيط للتحكم بالنظام, عن طريق الريجستري - (VB6.0)

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

• برنامج : لتقييد و منع تشغيل البرامج الاخرى - (VB6.0)

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

• النوافذ المنبثقة و طريقة لإستغلالها في برامجنا -(VB.NET)

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

• تقنية الإستدعاء الذاتي - (VB.NET , VB6.0)

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

• مصفوفات الأدوات Control Arrays افكار وتلميحات ! - (VB.NET)

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

• أفكار و تلميحات[ المعنى الحقيقي للـ True و False ] - أمثلة (VB.NETVB6.0)

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

• دوال الـ APIs و مايقابلها في الدوت نت ! - (VB.NET)

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

#6

رغد الطيب اشكرك على المتابعه

بس الكود الذي وضعته لا يتعمق في الكود

فتلاحظ انه ما اقدر اقرأ اسم التاق <u> والاخرى

أنا تعبت أبي طريقة اخليه يدخل في لوب يخليه يتعمق في الكود أكثر

وأيضا لا يقرأ صفات مثل اللون

تم تعديل هذه المشاركة بواسطة دمعة وفاء في 21 ديسمبر 2007 في 01:05

هذا الموضوع مغلق.

مواضيع مشابهة