CefSharp:网页自动化和爬虫神器

推荐一个.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;
            }
        });

    }
}

04 项目简介

https://github.com/cefsharp/CefSharp

更多开源项目: https://github.com/bianchenglequ/NetCodeTop

我是编程乐趣,一个.Net开发经验老程序员,欢迎“关注”我,每天为你分享开源项目和编程知识。
也欢迎加入【.Net技术编程交流社区】,和大家共同学习交流!,
点击加入https://bbs.youkuaiyun.com/topics/613465368

- End -

推荐阅读

一个.Net开源的关系管理系统

支持多语言、多商店的商城,.Net7 + EF7领域驱动设计架构

推荐一个Excel与实体映射导入导出的C#开源库

一个.Net强大的Excel控件,支持WinForm、WPF、Android【强烈推荐】

一个亚马逊赞助的.Net轻量级、流行的HTTP客户端库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

编程乐趣

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值