架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 18287|回复: 2

[WinForm] 使用CefSharp 在C#访问网站

[复制链接]
发表于 2019-4-2 20:31:40 | 显示全部楼层 |阅读模式
早已久仰CefSharp大名,今日才得以实践,我其实想用CefSharp来访问网站页面,然后抓取html源代码进行分析,如果使用自带的WebBrowser控件,可能会出现一些不兼容js的错误。

CefSharp允许您在.NET应用程序中嵌入Chromium。它是Marshall A. Greenblatt 围绕Chromium Embedded Framework(CEF)的轻量级.NET包装器。大约30%的绑定是用C ++ / CLI编写的,这里的大部分代码都是C#。它可以从C#或VB或任何其他CLR语言中使用。CefSharp提供WPF和WinForms Web浏览器控件实现。

GitHub地址:https://github.com/cefsharp/CefSharp

首先,我用vs新建一个winform的项目,环境如下:

  • .Net框架版本:4.6.2
  • Visual Studio 2013: 及以上,我这里使用的是vs2017版本



nuget命令如下:

执行完成后,程序会自动添加依赖包,如下:

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="cef.redist.x64" version="3.3578.1870" targetFramework="net462" />
  <package id="cef.redist.x86" version="3.3578.1870" targetFramework="net462" />
  <package id="CefSharp.Common" version="71.0.2" targetFramework="net462" />
  <package id="CefSharp.WinForms" version="71.0.2" targetFramework="net462" />
</packages>

安装完成后,编译项目报错如下:

CefSharp.Common contains unmanaged resoures, set your project and solution platform to x86 or x64. Alternatively for AnyCPU Support see https://github.com/cefsharp/CefSharp/issues/1714

看到网上的解决说:将活动解决方案平台改成 x86 (CEF不能自适应 x86 | x64,必须选择一个目标),目标平台也必须和解决方案平台一致。
从CefSharp 51开始,您可以使用AnyCPU使用CefSharp,但它不能单独工作,因为您需要在2个特定文件中进行一些更改。

按照网友的办法,应该是可以解决的,我没有试,其实cef已经支持AnyCPU了,但是需要配置,配置方案如下:

1:首先右击项目,卸载解决方案,编辑项目的.csproj文件,并在第一个 <PropertyGroup>的节点添加:

QQ截图20190402195358.jpg

2:添加完成后,重新加载项目,并且在app.config添加如下配置:

QQ截图20190402202239.jpg

3:在Cef.Initialize调用前,配置浏览器启动路径,如下代码:

解决方案参考:https://github.com/cefsharp/CefSharp/issues/1714

完成的代码如下:


运行项目:

QQ截图20190402202614.jpg
参考资料:https://ourcodeworld.com/article ... informs-application

(完)







上一篇:java获取Object属性类型、属性名称、属性值
下一篇:Visual Studio 2019 离线下载安装教程
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2019-4-2 20:46:35 | 显示全部楼层
支持楼主,感谢分享。
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2019-4-8 23:44:58 | 显示全部楼层
一直在关注CefSharp,只是没有更好跟简单的例子去理解。感谢分享
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-4-26 02:03

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表