Web Design | WebRich.ir


طراحی سایت های فروشگاهی و شخصی

سفارش طراحی سایت
دیده شدن در همه جای دنیا

سفارش طراحی سایت

سفارش طراحی سایت
Web Design | WebRich.ir


طراحی سایت های فروشگاهی و شخصی



دریافت اطلاعات سایت با HttpWebRequest و نحوه استخراج پروکسی و متن


بنام خدای مهربان
سلام دوستان
این پست نحوه دریافت اطلاعات از وب رو میخام آموزش بدم
همونطور که میدونید سایتها بسته به سلیقه برنامه نویس با متدهای مختلفی نوشته میشن   خب همینطور دریافت اطلاعات از اون هم فرق میکنه
کاربرد پروکسی در برنامه های کرک و یا برنامه های تست وب ,...
برای دریافت اطلاعات از وب با سی شارپ راههای مختلفی هست مثلا کامپوننت htmlagilitypack 

و یا کلاس webClient
در این تمرین  با کلاس httpWebRequest مقداری رو از سایت میگیریم و این مقدار پروکسی هستش
خب کلاس httpwebrequest داراری متدهای فراوانی هست که تو راهنمای
ماکروسافت مشروحا قرار داده شده
ابتدا یه نمونه از این کلاس ایجاد میکنیم
و یه ورودی بهش میدیم

  HttpWebRequest httpW = (HttpWebRequest)HttpWebRequest.Create(textBox1.Text);

و سپس وقتی کاربر ادرس رو وارد کرد بازخورد اونو با متد response میگیریم

 
 
HttpWebResponse resp = (HttpWebResponse)httpW.GetResponse();

الان باید با کلاس استریم دریافتی ها رو بخونیم

            StreamReader sr = new StreamReader(resp.GetResponseStream());
 

 تو این خط باید متدی ایجاد میکردم که رشته هایی که دریافت کردیم رو بخونه اینکارو با استریم ریدیر کردیم
اون رشته ای رو که گرفتیم توسط استریم میخونیم و اون رشته ها الان قروقاطی هستن
برای دریافت پروکسی باید از یه نوع بنام رگولار اکسپریشن

 
string MyReg = "[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}:[0-9]{1,4}";
            Regex reg = new Regex(MyReg);
 
 

برای تفکیک اعداد از کلمات باید یه الگویی از این کلاس بسازیم که اعداد رو به شکلی که ما میخاییم جدا کنه
مثلا
[0-9]
یعنی اعداد بین 0و9
{1,3}
این یعنی رقم ما حداقل 1 و حداکثر 3 عدد باشه
خب این پروسه رو ادامه میدم در اخر نیز به همین شکل پورت رو میگریم


نهایتا برنامه رو اجرا میکنیم
این همه کدها

از مراحل ساخت برنامه فیلم تهیه کردم که میتونید در==> آپارات ببینید
 
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Text.RegularExpressions;
using System.IO;
using System.Net;
using System.Text;
using System.Windows.Forms;

namespace ProxyScraper
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
          

        }

        private void Button1_Click(object sender, EventArgs e)
        {
            HttpWebRequest httpW = (HttpWebRequest)HttpWebRequest.Create(textBox1.Text);
            HttpWebResponse resp = (HttpWebResponse)httpW.GetResponse();
            StreamReader sr = new StreamReader(resp.GetResponseStream());
            string StrUrl = sr.ReadToEnd();
            string MyReg = "[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}:[0-9]{1,4}";
            Regex reg = new Regex(MyReg);
            MatchCollection mat = reg.Matches(StrUrl);
            foreach (Match item in mat)
            {
                listBox1.Items.Add(item);
            }
            resp.Close();
            label1.Text = listBox1.Items.Count.ToString();
        }

        private void Button2_Click(object sender, EventArgs e)
        {
            SaveFileDialog sv = new SaveFileDialog();
            if (sv.ShowDialog()==DialogResult.OK)
            {
                using (StreamWriter sw = new StreamWriter(sv.FileName))
                {
                    foreach (object item in listBox1.Items)
                {
                   
                        sw.WriteLine(item);
                   
                }
                }
            }
        }
    }
}
 
 


برنامه کرک,دانلود سورس سی شارپ,دریافت اطلاعات سایت با سی شارپ,ساخت وب گربر,ساخت پروکسی گربر,سی شارپ httprequest,سی شارپ httpwebrequest,سی شارپ web,scrape,سی شارپ webclient,سی شارپ webrequest,نحوه گرفتن متن از سایت,هک سایت,ayromloo.ir,web design,طراحی سایت محمدباقر آیرملو