http://www.sufeinet.com/plugin.php?id=keke_group

苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

分布式系统框架(V2.0) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程

HttpHelper爬虫框架(V2.7-含.netcore) HttpHelper官方出品,爬虫框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 开源的爬虫类,支持多种模式和属性 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 8179|回复: 3

[反馈建议] 关于httpHelper使用本机代理访问https的网站时

[复制链接]
发表于 2014-4-20 13:01:07 | 显示全部楼层 |阅读模式
因为我要用到Fiddler抓取使用HTTPhelper访问时的记录,但是fiddler抓不到新版HTTPhelper的数据,经过研究,发现是新版HTTPhelper默认不适用ie的代理导致的,即使把ProxyIp = "" 设置为空,也不会使用ie的代理。
在网上找到Fiddler是把ie添加了代理127.0.0.1:8888,然后监听8888这个端口来抓包的,于是,我把HTTPhelper的代理设置为ProxyIp ="127.0.0.1:8888" ,此时终于能抓到包了。。到这里,如果是只抓http类型的童鞋,这样就解决了fiddler不能抓包的问题。。但是我有碰到了新的问题。

如果是抓https类型的网站,把HTTPhelper的代理设置成ProxyIp ="127.0.0.1:8888" 后,就会提示“基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系。”
然后我测试了使用其他的代理,ProxyIp ="203.204.206.176:80"  不会提示出错,http和https都能获取到内容,不过这样的话,Fiddler还是抓不到包。。。

晕啊,我就要崩溃了。。

下面附上我的测试图片和测试代码。
第一,第三,第四个按钮都能抓到数据。第一个按钮Fiddler也能抓到get的包

1.jpg

第二个按钮点击直接就出错了。
2.jpg


[C#] 纯文本查看 复制代码
private void button1_Click(object sender, EventArgs e)
{
richTextBox1.Text = GetHtml("http://zz.ganji.com/", "127.0.0.1:8888");
}
private void button2_Click(object sender, EventArgs e)
{
richTextBox1.Text = GetHtml("https://passport.ganji.com/login.php", "127.0.0.1:8888");
}
private void button3_Click(object sender, EventArgs e)
{
richTextBox1.Text = GetHtml("http://zz.ganji.com/", "203.204.206.176:80");
}

private void button4_Click(object sender, EventArgs e)
{
richTextBox1.Text = GetHtml("https://passport.ganji.com/login.php", "203.204.206.176:80");
} 

private string GetHtml(string url,string proxyIp)
{
HttpHelper http = new HttpHelper();
HttpItem item = new HttpItem()
{
URL = url,//URL 必需项 
Method = "get",//URL 可选项 默认为Get 
IsToLower = false,//得到的HTML代码是否转成小写 可选项默认转小写 
Cookie = "",//字符串Cookie 可选项 
Referer = "",//来源URL 可选项 
Postdata = "",//Post数据 可选项GET时不需要写 
Timeout = 100000,//连接超时时间 可选项默认为100000 
ReadWriteTimeout = 30000,//写入Post数据超时时间 可选项默认为30000 
UserAgent = "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)",//用户的浏览器类型,版本,操作系统 可选项有默认值 
ContentType = "text/html",//返回类型 可选项有默认值 
Allowautoredirect = false,//是否根据301跳转 可选项 
//CerPath = "d:\123.cer",//证书绝对路径 可选项不需要证书时可以不写这个参数 
//Connectionlimit = 1024,//最大连接数 可选项 默认为1024 
ProxyIp = proxyIp,//代理服务器ID 可选项 不需要代理 时可以不设置这三个参数 
//ProxyPwd = "123456",//代理服务器密码 可选项 
//ProxyUserName = "administrator",//代理服务器账户名 可选项 
ResultType = ResultType.String
};
HttpResult result = http.GetHtml(item);
string html = result.Html;
string cookie = result.Cookie;
return html;
}






1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
 楼主| 发表于 2014-4-20 13:19:26 | 显示全部楼层
@sufei  
回复

使用道具 举报

发表于 2014-4-20 13:31:54 | 显示全部楼层
这个问题我已收到,下周会更新一次,或者是最近几天,到时候下载新版就行了
 楼主| 发表于 2014-4-20 13:56:13 | 显示全部楼层
站长苏飞 发表于 2014-4-20 13:31
这个问题我已收到,下周会更新一次,或者是最近几天,到时候下载新版就行了

多谢站长。
您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备18043678号-2)

GMT+8, 2024-11-14 14:31

© 2014-2021

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