1

我正在尝试使用 C# 登录网站,然后转到网站的其他页面(需要登录)并获取 HTML,以便我可以使用 htmlagilitypack 进行解析。

我可以获取网页的 html 没问题,但我在部分登录时遇到了困难。

我启动了 Fiddler 并登录以查看会出现什么(我是 fiddler 的新手),列表中出现了两件事,都是 CONNECT (我期待它会是一个帖子,因为表单是 POST ???)

我想进入的网站是: https ://amn.efanniemae.com/AMN/control

谁能指出我正确的方向/告诉我如何做到这一点?

谢谢你。

4

2 回答 2

1

您可能需要与网站所有者或文档核实,看看他们是否有任何自动登录方法。一些登录系统通过允许您以查询字符串发送信息(非常不安全)来支持自动登录,或者会为您提供要发送的正确 POST 值。请注意,自动 POST 登录可能与手动登录不同(即:将隐藏表单值设置为 AutoLogin 等),并且出于安全目的,某些站点不希望人们自动登录过程。

如果第一步成功,大多数网站都会向您发送一个包含会话信息的 cookie。因此,要在请求之间保持会话,您只需保存此 cookie,然后将其与下一个请求一起发送。使用 HttpWebRequest 对象,您可以使用 CookieContainer 属性来获取 cookie。

有关保存 cookie 的更多详细信息,请参阅此 SO 帖子,如何使用 WebClient 登录站点?

于 2012-07-23T17:07:11.193 回答
1

在您在选项中启用之前,Fiddler 不会解密 ssl 流量。转到 Fiddler 选项,选中“解密 ssl 流量”,信任证书,您将看到流量。

于 2012-07-23T17:08:01.153 回答