C# WebBrowser的使用】的更多相关文章

最近有个小程序需要采集网页源代码,但有的网页中JS脚本又会生成额外的代码,比如http://www.cnblogs.com/lidabo/p/4169396.html 红框部分便是另外加载的代码. 此处可以看到web前端是有 "操作系统" 几个字的,但查看网页源代码之后却搜不到这几个字 C#有个webbrowser控件可以等网页加载完之后获取浏览器上所有的网页源代码(也包括额外被JS加载进来的代码) [第一次]试验 WebBrowser webBrowser1 = new WebBro…
注:本文适用.net 2.0+的winform项目 目的: 点击页面中的target="_blank"链接时,弹出新窗体 页面中有window.close()操作时,关闭窗体 上述窗体是指WebBrowser所在的Form,基本上,上述目的就是让该窗体表现得像个正常浏览器而已. 一.弹出新窗体 WebBrowser(下称wb)自带NewWindow事件,所以直接注册该事件即可: private void wb_NewWindow(object sender, CancelEventAr…
WebBrowser WebBrowser 报错如何屏蔽 CEF(Chromium Embedded Framework)       参考 WPF, Chrome Embedded and WebApi Self-hosted介绍了WPF通过CEF调用WebAPI CEFSharp.WPF – Getting Started CefSharp.Tutorial 个人更喜欢这个Cef的.Net包装 WPF WebBrowser control flickers in ToolWindow whi…
设置控件的值 /// <summary> /// 根据ID,NAME双重判断并设置值 /// </summary> /// <param name="tagName"></param> /// <param name="id"></param> /// <param name="value"></param> private void SetTxt(s…
0.常用方法   Navigate(string urlString):浏览urlString表示的网址 Navigate(System.Uri url):浏览url表示的网址 Navigate(string urlString, string targetFrameName, byte[] postData, string additionalHeaders): 浏览urlString表示的网址,并发送postData中的消息 //(通常我们登录一个网站的时候就会把用户名和密码作为postDa…
一.前言 一直想用WebBrowser做一些好玩的东西,比如抓取分析感兴趣的网站页面.自动点击提交页面等,所以最近在研究WebBrowser.WebBrowser的功能十分强大,就是一个微型的Browser,不过它也有自己的一些不足,为了下次避免再次出现这个坑,特在此总结一下. 二.故障描述 本打算用WebBrowser做一个自助登录的小程序,来登录公司内部的系统(其实公司的登录系统形同虚设,无验证码),本以为万事俱备,只欠东风了,测试的时候才发现,压根儿没给我起作用,只是弹出了脚本错误提示.什…
最近因为项目的需要,需要研究在C#winform窗体中加载网页,和弹出提醒,但我们的网站是HTML5的,ie浏览器内核不支持,而且因为根据客户机系统的不一致,加载的ie内核可能是不同,显示的效果也会不一致,在网上查询了大量的资料,途中遇到了很多的问题. 因为ie内核不支持html5,所以说得出的结论是webbrowser不能支持html5,但是我们可以用其他的内核.比如火狐的内核Gecko,或webkit内核,我从csdn上下载了版本为22的geckofx:地址:http://download.…
1)在c#中调用js函数 如果要传值,则可以定义object[]数组. 具体方法如下例子: 首先在js中定义被c#调用的方法: function Messageaa(message) {       alert(message); } 在c#调用js方法Messageaa private void button1_Click(object sender, EventArgs e)         {             // 调用JavaScript的messageBox方法,并传入参数  …
首先为项目添加引用 Microsoft Internet Controls public Form1() { InitializeComponent(); this.webBrowser1.AllowWebBrowserDrop = false; //可在属性里设置,很重要 //在新Form中的WebBrowser中打开 (this.webBrowser1.ActiveXInstance as SHDocVw.WebBrowser).NewWindow2 += new SHDocVw.DWebB…
wpf的webbrowser在使用NavigateToString(string text);方法时如果字符串含有中文字符,并在html的头文件中没有声明Document的编码方式为UTF-8的话,由于默认的编码方式的原因,导致中文显示为乱码.如需转码为可采用下面方法: /// <summary> /// webbrowser解决中文乱码问题 good /// </summary> /// <param name="HTML"></param&…
事件 webBrowser_DocumentCompleted private void webBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) { if (webBrowser.ReadyState == WebBrowserReadyState.Complete && webBrowser.IsBusy == false) { //panelEx1.Text = "…
2014年09月02日更新 今天用了一下WebBrowser,在使用过程中也遇到了一些问题,在这里做一下记录 虽然WebBrowser比较重,会比较影响性能(除非一定要用到它,否则尽量少用),但有时候还是得用WebBrowser来作为显示的控件,比如WP上有2048渲染的限制,我们可以通过WebBrowser来显示长文本,还有富文本信息(新闻)等,但使用起来也并不方便,这里做一下记录 1.禁止缩放 <head> <meta http-equiv="Content-Type&qu…
前段时间遇到一个困惑用WebBrowser访问百度地图的时候,百度会自动转至让下载sdk的页面,经过一个仁兄的点拨,可以改变WebBrowser的agent来骗过网站.经过试验成功.贴源码如下: string ua = "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Maxthon; .NET CLR 1.1.4322)"; Uri uri = new Uri("http://map.b…
最近一直在思考着如何通过代码去伪装或实现人工自然浏览网页的效果,起初能想到的是用WebBrowser实现这一效果,需要达到的功能预想有以下几点: 1.自动刷新 2.模拟人工下拉滚动条并停留一段时间: 3.可以刷IP.刷流量: 4.可以增加任意来访域名: 5.自动随机点击站内页面: 6.自动随机点击站内广告: 7.自动清除Cookie.Session: 8.能够模拟搜索引擎搜索关键字并点击到指点页面: 一.WebBrowser中获取Cookie生成CookieContainer 1.在WebBro…
步骤一:获取网页中验证码图片的url地址 在delphi中加入一个BitBtn和一个memo以及WebBrowser控件实现网页中验证码图片的url地址的获取 程序如下:procedure TForm1.BitBtn1Click(Sender: TObject); var   I:Integer; begin   for I:=0 to WebBrowser1.OleObject.document.images.length-1 do     Memo1.Lines.Add(WebBrowser…
Delphi WebBrowser控件的使用中出现的bug:  1.WebBrowser.Visible=false:Visible属性不能使WebBrowser控件不可见,暂时用 WebBrowser.Hide的方法代替,WebBrowser.Hide隐藏浏览器, WebBrowser.Show显示浏览器:    补充:WebBrowser的OnVisible事件 控制窗口的可见或隐藏,用法同上(经测试Visual属性改变时不会激发)    上述补充参考原网址:   http://www.tu…
准备工作 Chrome浏览器的内核不叫Chrome,而是Webkit,因此,我们只要找到Webkit的项目就好了. 1.下载WebKit的项目bin,网址如下: https://sourceforge.net/projects/webkitdotnet/files/WebKit%20.NET%200.x/0.5/WebKit.NET-0.5-bin-cairo.zip/download. 2.将bin文件夹下的所有(没错!是所有文件复制),并粘贴到项目文件夹下,目标目录是:项目名/bin/Deb…
一.背景 这几天在维护公司的一个项目,嗯…到现在七八年没人动过了(也是老古董了),都说N年前的代码碰不得 处处是坑 不能挖坑还得一步一步的填坑,恰好今天就填了一坑 此处作为记录 供以后翻阅,对代码除了有些看不懂或者说是很凌乱之外,其他都还行(没注释.有注释的地方是自动生成的英文注释…...包含 各种委托.事件.多线程.用户控件等等). 二.问题 对 就是一个CS程序,其中有个功能是输入网址然后展示网页内容,so问题来了 很多网站不支持IE8以下内核的浏览器(很粗暴的跳转到浏览器下载页面~~).那…
var document = webBrowser1.Document; document.ExecCommand("ClearAuthenticationCache", false, null); 找了好几天才找着,国内搜索已经被百毒打败. Delete cookies in webBrowser without restart http://stackoverflow.com/questions/21265674/delete-cookies-in-webbrowser-witho…
function TFrmmain.WriteAppNameToReg:Boolean; var reg:TRegistry; sPath,sAppName:String; Sver:string; lenver:Integer; begin Result:=True; reg:=TRegistry.Create; try reg.RootKey:=HKEY_LOCAL_MACHINE; sPath:='SOFTWARE\Microsoft\Internet Explorer\MAIN\Feat…
在asp.net网站中,如果要实现,在文本框中输入一个URL地址,就把该网页的页面整屏截下来,这段时间一直在研究这一块,在网上查了好多资料.自己又整合了一下. 其实也不是想象中的那么难.主要是通过调用System.Windows.Forms中的WebBrowser就可以了.具体代码试下如下. 命名空间引用 using System.IO;using System.Drawing.Imaging;using System.Drawing;using System.Windows.Forms;usi…
引言 想给自己之前写的网页小说爬虫程序更新换代,之前一直是用winform的形式写的程序,因此这一次更新打算把UI换成WPF(因为听说WPF很漂亮),顺便也以此引入WPF的学习. 那么作为网页爬虫程序,最重要的就是html源码的获取了,通常的获取方式有几种:HttpWebRequest.WebRequest.WebClient.WebBrowser等.由于我这里写的爬虫软件针对的网站需要先登录才能看到小说内容,而我一次爬取的内容不多都是短篇小说,因此不需要考虑到爬取的速度,因此自然是打算使用We…
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Runtime.InteropServices; using System.Runtime.Compile…
https://msdn.microsoft.com/en-us/library/aa752040(v=vs.85).aspx WebBrowser Control…
常用的方法 Navigate(string urlString):浏览urlString表示的网址 Navigate(System.Uri url):浏览url表示的网址 Navigate(string urlString, string targetFrameName, byte[] postData, string additionalHeaders): 浏览urlString表示的网址,并发送postData中的消息 //(通常我们登录一个网站的时候就会把用户名和密码作为postData发…
代码: public class FormsWebBrowser { Window _owner; FrameworkElement _placementTarget; Form _form; AxAcroPDF _wb = new AxAcroPDF(); public AxAcroPDF WebBrowser { get { return _wb; } } public FormsWebBrowser(FrameworkElement placementTarget,string path)…
http://blog.udnz.com/Article/Invoke_Javascript_On_Webbrowser_In_Winform.aspx C# 中调用 网页上的 Javascript 函数 //tbPara1 是C/S控件//funJS 是webbrowser上定义的body webBrowser1.Document.InvokeScript("funJS", new object[] { tbPara1.Text });…
首先是用c#中的WebBrowser控件打开登录网页,很简单,拖拽WebBrowser到Form上,然后给它的Url属性赋值.WebBrowser就会自动navigate to 这个网页. WebBrowser1.Url= new Uri("小米登录地址") HtmlElement usrname=WebBrowser1.Document.GetElementById("ID值"), 这条语句可获得用户名输入框元素.ID值可以通过查看HTML源文件得到.还有很多方法…
void web_Navigated(object sender, WebBrowserNavigatedEventArgs e) { var web = sender as System.Windows.Forms.WebBrowser; if (web.ActiveXInstance == null) return; HtmlElement head = web.Document.GetElementsByTagName(]; HtmlElement script = web.Documen…
如果电脑上安装了IE8或者之后版本的IE浏览器,Webbrowser控件会使用IE7兼容模式来显示网页内容.解决方法是在注册表中为你的进程指定引用IE的版本号. 比如我的程序叫做a.exe,以64位机器为例,因为32位程序在64位机器上访问注册表时会自动被转到32位地址,而不是真正的地址,所以使用第一个即可. 对于64位程序 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BR…