شماره تماس : 09014413449

    ...

  • ...

  • ...

  • ...

ثبت نام / ورود

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

mba
12 شهریور 1400
دسته بندی csharp-asp.net

بنام خدای مهربان
سلام دوستان
این پست نحوه دریافت اطلاعات از وب رو میخام آموزش بدم
همونطور که میدونید سایتها بسته به سلیقه برنامه نویس با متدهای مختلفی نوشته میشن   خب همینطور دریافت اطلاعات از اون هم فرق میکنه
کاربرد پروکسی در برنامه های کرک و یا برنامه های تست وب ,...
برای دریافت اطلاعات از وب با سی شارپ راههای مختلفی هست مثلا کامپوننت 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,طراحی سایت محمدباقر آیرملو

نظرات

برای ارسال نظر شما باید ابتدا وارد حساب کاربری خود شوید.