c# 获取 webbrowser 完整 cookie】的更多相关文章

[DllImport("wininet.dll", CharSet = CharSet.Auto, SetLastError = true)] //API设定Cookie static extern int InternetSetCookieEx(string lpszURL, string lpszCookieName, string lpszCookieData, int dwFlags, IntPtr dwReserved); [DllImport("wininet.d…
下面的代码实现的功能确实如标题所言,但要求是获取的是当前进程内的webbrowser,跨进程或引用的ShellWindows对象无效, 哎我本来两种情况都要用,只把前者代码先记下: internal sealed class NativeMethods { #region enums public enum ErrorFlags { ERROR_INSUFFICIENT_BUFFER = , ERROR_INVALID_PARAMETER = , ERROR_NO_MORE_ITEMS = }…
获取WebBrowser全cookie [DllImport("wininet.dll", CharSet = CharSet.Auto, SetLastError = true)] static extern bool InternetGetCookieEx(string pchURL, string pchCookieName, StringBuilder pchCookieData, ref int pcchCookieData, int dwFlags, object lpRe…
网上找到的可以完整获取Cookie的方法,转载一下希望能帮助更多人. 亲测可用 在Winform中使用WebBrowser控件获取网站的Cookie有时候是不完整的,默认调用Document.Cookie也取不到Cookie,其中就是因为有些网站对于关键Cookie做了保护,为Cookie加上了HttpOnly的属性,HttpOnly可以防止cookie被“读取”,这时我们就需要利用WIN API用来辅助获取网站的完整Cookie了. using System; using System.Com…
在做数据采集时,有些网站需要输入验证码,但各网站验证码都不同,不可能有完美的识别验证码的代码,所以我也没去研究,我所采取的方案是:在winform里通过WebBrowser调用网页先手动登录系统,然后再通过webBrowser1.Document.Cookie获取其Cookie,再将其用到HttpWebRequest里用来访问自己需要的页. 一直用的都没有问题,但最近在对一个网站操作时总是不能获取完整Cookie,百思不得其解,使用Fiddler2对比发现,不能获取到的Cookie里最后有一个H…
using System; using System.ComponentModel; using System.Net; using System.Runtime.InteropServices; using System.Security; using System.Security.Permissions; using System.Text; internal sealed class NativeMethods { #region enums public enum ErrorFlags…
在WebBrowser下对网页进行操作其实是一件挺轻松的事情,他可以很方便实现自定义的网站访问习惯.而WebBrowser毕竟是对MS原生 控件的封装,当我们使用C#下的WebBrowser尤其是这样,虽然他可以更方便大家去调用,但是他的方便却是牺牲了灵活性为代价的. 有一天我想使用WebBrowser获取一个网站的COOKIE,在调用Document.Cookie时,发现无法完整获取其COOKIE,百思 不得其解,这么简单的功能,WebBrowser也会秀逗.经过抓包分析,发现原来该网站对写入…
最近一直在思考着如何通过代码去伪装或实现人工自然浏览网页的效果,起初能想到的是用WebBrowser实现这一效果,需要达到的功能预想有以下几点: 1.自动刷新 2.模拟人工下拉滚动条并停留一段时间: 3.可以刷IP.刷流量: 4.可以增加任意来访域名: 5.自动随机点击站内页面: 6.自动随机点击站内广告: 7.自动清除Cookie.Session: 8.能够模拟搜索引擎搜索关键字并点击到指点页面: 一.WebBrowser中获取Cookie生成CookieContainer 1.在WebBro…
用c++ builder 的TIdHttp组件Get一个ASP.Net MVC服务器的一个页面,获取页面中Cookie信息,修改后Post到服务器上去. 在本地调试的时候可以获取到,部署到服务器上就获取不到Cookie,用FireFox的FireBug打开网页可以看到Cookie的信息,然后又用Wireshark查看Get数据,发现Cookie有HttpOnly属性,TIdHttp的CookieManager获取不到.查找发现在m_IdHttp->Response->RawHeaders中有C…
在winform里面经常会用到WebBrowser,这是一个难点就是如何设置cookies,注意,Docment对象是只读的,所以WebBrowser.Docment.cookie也就只有get方法,没有set方法,下面将介绍如何设置cookies. public partial class WebBrowserControl : Form { private String url; [DllImport("wininet.dll", CharSet = CharSet.Auto, S…
<script language="javascript"> //获取域名 hostName = window.location.host; host2=document.domain; //获取页面完整地址 url = window.location.href; if(hostName=='www.utailor.com.cn'){ document.write('<ul id="loginBar_<{$widgets_id}>" s…
原文:网上收集的WebBrowser的Cookie操作 1.WebBrowser设置Cookie Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> 1public partial class WebBrowserControl : Form  2    {  3        private String url;  4  5        [D…
#include <stdio.h> #include <locale.h> #include <windows.h> #include <tlhelp32.h> #include <tchar.h> #include <Psapi.h> #pragma comment (lib,"Psapi.lib") BOOL DosPathToNtPath(LPTSTR pszDosPath, LPTSTR pszNtPat…
今天的一个Jmeter脚本,有一个HTTP request始终获取不到cookie,但其前面和后面的几个步骤都可以获取到cookie,报文的请求服务器地址都是照着fiddler上面填的,没有问题,后来通过修改jmeter.properties中的log_level.jmeter=DEBUG打开调试开关,发现这样的DEBUG信息: 2013/09/18 01:11:28 DEBUG - jmeter.protocol.http.control.HC3CookieHandler: Found 0 c…
Cookie操作类. 包括创建.读取.修改.获取.销毁cookie import java.util.Hashtable; import java.util.Iterator; import java.util.Set; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * Cookie…
/** * 获取url完整地址 * @author 梁景 * @date 2017-04-27 * @return */ function getUrlInfor() { $sys_protocal = isset($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == '443' ? 'https://' : 'http://'; $php_self = $_SERVER['PHP_SELF'] ? $_SERVER['PHP_SEL…
[DllImport("wininet.dll", CharSet = CharSet.Auto, SetLastError = true)] public static extern bool InternetSetCookie(string lpszUrlName, string lbszCookieName, string lpszCookieData); private void test(){ string cookie = "name=小明; age=19;pho…
在ASP.NET项目中获取请求完整的Url: 获取System.Web命名空间下的类名为HttpRequestBase的Url方法: /// <summary>在派生类中替代时,获取有关当前请求的 URL 的信息.</summary> /// <returns>包含有关当前请求的 URL 的信息的对象.</returns> /// <exception cref="T:System.NotImplementedException"&…
代码: http://www.cnblogs.com/hsapphire/archive/2010/09/10/1823384.html http://blog.csdn.net/attilax/article/details/8595036 [DllImport("wininet.dll", CharSet = CharSet.Auto, SetLastError = true)] static extern bool InternetGetCookieEx(string pchUR…
[DllImport("wininet.dll", CharSet = CharSet.Auto, SetLastError = true)] static extern bool InternetGetCookieEx(string pchURL, string pchCookieName, StringBuilder pchCookieData, ref System.UInt32 pcchCookieData, int dwFlags, IntPtr lpReserved); […
项目中,在做登录验证时,用到了cookie,同一账户登陆,可以.切换其他账号时,就在也登录不上了,用原来的也不行.检查Request.IsAuthenticated一直false,而且Request.Cookie中没有设置的Cookie,但是通过fiddler检查post,get数据,cookie都正常. 通过修改代码发现,当使用自定义的账户对象(new一个,随便设置值)没有问题,而使用EF查找数据库,生成的账户对象则不行.通过对比发现,EF查找数据库得到的账户对象除了基本的信息外,还附带了其他…
.继上一篇随笔,链接点我,解决手机端cookie的问题. .上次用cookie+redis实现了session,并且手机浏览器可能回传cookies有问题,所以最后用js取出cookie跟在请求的url后面. .但是今天发现了新的问题,js取cookie存的sessionId为空,情况如下: (1)QQ浏览器能获取某些cookie,另一些cookie获取为空,猜测是后台Response SetCookie的时候,手机端浏览器没能良好的接受. (2)UC浏览器测试正常. (3)Safari情况和Q…
cookie Name为TEST_COOKIE:用如下方法可以获取cookie值: document.cookie.replace(/(?:(?:^|.*;\s*)TEST_COOKIE\s*\=\s*([^;]*).*$)|^.*$/, '$1')…
1.获取cookie的函数 function getCookie(cookieName) { var strCookie = document.cookie; var arrCookie = strCookie.split("; "); for(var i = 0; i < arrCookie.length; i++){ var arr = arrCookie[i].split("="); if(cookieName == arr[0]){ return ar…
用新浪微博api收集数据有诸多限制,每小时只能调用官方api函数150次,认证也很麻烦.因此想通过爬网页的方式来收集数据.访问新浪微博用户网页首先需要登录,登录获取cookie后可直接获取网页数据,无需再次登录.获取登录cookie的方式具体如下: 1)采用get的方式访问http://login.sina.com.cn/sso/prelogin.php?entry=miniblog&callback=sinaSSOController.preloginCallBack&user=账户&a…
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta name="description" content=""> <meta name="HandheldFriendly" content="True"> <meta name…
cookie 跟域名有关系的浏览器缓存 获取cookie document.cookie; 获取到的如果是多条cookie信息,是以分号和一个空格("; ")隔开:a=1; b=2; c=3 //设置cookie document.cookie = key +"="+ value; 默认情况下cookie在关闭浏览器的时候就会自动清除,如果想保存,需要设置过期时间: 设置cookie过期时间: document.cookie = key +"="…
项目需要前端获取后台返回的cookie,并以此作判断.我是在main.js入口文件下使用的 具体代码: new Vue({ el: '#app', router, template: '<App/>', components: { App }, methods:{ //读取cookie,需要注意的是cookie是不能存中文的,如果需要存中文,解决方法是后端先进行编码encode(),前端取出来之后用decodeURI('string')解码.(安卓可以取中文cookie,IOS不行)    g…
def getCookie(self): #获取cookie spiderFirefox = webdriver.Firefox() spiderFirefox.get("http://www.cnvd.org.cn/") time.sleep(5) cookies = "" for cookie in spiderFirefox.get_cookies(): cookies += u"%s=%s; "%(cookie["name&qu…
<script src="http://pv.sohu.com/cityjson?ie=utf-8"></script> <script type="text/javascript">window.onload=function(){ gettime(); //js获取当前时间 getip(); //js获取客户端ip geturl(); //js获取客户端当前url getrefer(); //js获取客户端当前页面的上级页面的…