网页自动化和爬虫神器CefSharp

下载图标
网页自动化和爬虫神器CefSharp
文件版本
网页自动化和爬虫神器CefSharp
文件版本
文件大小
上传时间
2023/12/29 9:51:11

推荐一个.Net开源项目,非常适合用于网页自动操作和网页爬虫的项目。

01

项目简介

CefSharp是一个基于Chromium Embedded Framework(CEF)的.NET开源项目。

可以让开发人员非常方便使用C#与浏览器交互,可以操作Html、Css、执行JavaScript代码等方式来处理页面的内容。

支持多线程,方便开发人员创建多个浏览器对象,并可以通过设定CookieContainer和UserAgent来模拟不同用户的操作,提升网页数据采集和速度。

02

项目优点

1、控件:支持WPF和WinForms web浏览器控件;

2、强大的JS交互能力:支持与JavaScript的双向交互能力,方便Web端与客户端进行数据交互;

3、多线程抓取:支持多线程操作,提升效率;

4、丰富的API:提供了非常丰富的API,使得开发人员非常方便控制和操作Web浏览器;

5、社区:社区非常活跃,案例和资料非常多,方便开发人员进行交流和解决问题。

03

使用示例

1、加载网页

ChromiumWebBrowser browser = new ChromiumWebBrowser();

browser.Load("https://www.xxx.com");

2、执行Js脚本

browser.ExecuteScriptAsync("document.getElementById('login-button').click();");

3、获取页面Html

public partial class Form1 : Form{
    ChromiumWebBrowser browser;    public Form1()
    {
        InitializeComponent();
    }    private void Form1_Load(object sender, EventArgs e)
    {
        browser = new ChromiumWebBrowser();
        browser.Dock = DockStyle.Fill;
        Controls.Add(browser);


        browser.FrameLoadEnd += Browser_FrameLoadEnd;
        browser.Load("http://www.baidu.com");
    }    private void Browser_FrameLoadEnd(object? sender, FrameLoadEndEventArgs e)
    {        var task = e.Frame.GetSourceAsync();//HTML源文件作为字符串返回
        task.ContinueWith(t =>
        {            if (!t.IsFaulted)
            {                string resultStr = t.Result;
            }
        });

    }
}



© 版权声明
THE END
喜欢就支持以下吧
点赞 0 分享