如何在 HtmlAgilityPack 中使用代理
How to use a proxy with in HtmlAgilityPack
我需要使用 HtmlAgilityPack 的代理。
我给了我的应用 RefURL
link。之后,我希望应用程序从代理地址获取 url。例如“101.109.44.157:8080”
我搜索并发现了这个:
WebClient wc = new WebClient();
wc.Proxy = new WebProxy(host,port);
var page = wc.DownloadString(url);
并像这样使用它。
RefURL = new Uri(refLink.Text);
WebClient wc = new WebClient();
wc.Proxy = new WebProxy("101.109.44.157:8080");
var page = wc.DownloadString(RefURL);
RefURL.ToString();
HtmlWeb web = new HtmlWeb();
HtmlAgilityPack.HtmlDocument doc = web.Load(RefURL.ToString());
但是没用!
代理 IP 没有响应,但您也没有在此代码行中传递 Web 代理:
HtmlAgilityPack.HtmlDocument doc = web.Load(RefURL.ToString());
应该是:
HtmlAgilityPack.HtmlDocument doc = web.Load(RefURL.ToString(),"GET", webProxy);
第一步是找到“新代理IP”列表,例如:
- https://free-proxy-list.net/uk-proxy.html
- https://hidemy.name/en/proxy-list/
- http://free-proxy.cz
- http://nntime.com
这些地址中的大多数可以工作几个小时。查看 how to set proxy IP in a browser. If the proxy is anonymous, this page 应该无法检测到您的位置和 IP。
一旦您拥有可用的代理 IP 和端口,您就可以创建 webProxy 对象或简单地传递 IP 和端口。
string RefURL = "https://www.whatismyip.com/";
string myProxyIP = "119.81.197.124"; //check this is still available
int myPort = 3128;
string userId = string.Empty; //leave it blank
string password = string.Empty;
try
{
HtmlWeb web = new HtmlWeb();
var doc = web.Load(RefURL.ToString(), myProxyIP, myPort, userId, password);
Console.WriteLine(doc.DocumentNode.InnerHtml);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
我需要使用 HtmlAgilityPack 的代理。
我给了我的应用 RefURL
link。之后,我希望应用程序从代理地址获取 url。例如“101.109.44.157:8080”
我搜索并发现了这个:
WebClient wc = new WebClient();
wc.Proxy = new WebProxy(host,port);
var page = wc.DownloadString(url);
并像这样使用它。
RefURL = new Uri(refLink.Text);
WebClient wc = new WebClient();
wc.Proxy = new WebProxy("101.109.44.157:8080");
var page = wc.DownloadString(RefURL);
RefURL.ToString();
HtmlWeb web = new HtmlWeb();
HtmlAgilityPack.HtmlDocument doc = web.Load(RefURL.ToString());
但是没用!
代理 IP 没有响应,但您也没有在此代码行中传递 Web 代理:
HtmlAgilityPack.HtmlDocument doc = web.Load(RefURL.ToString());
应该是:
HtmlAgilityPack.HtmlDocument doc = web.Load(RefURL.ToString(),"GET", webProxy);
第一步是找到“新代理IP”列表,例如:
- https://free-proxy-list.net/uk-proxy.html
- https://hidemy.name/en/proxy-list/
- http://free-proxy.cz
- http://nntime.com
这些地址中的大多数可以工作几个小时。查看 how to set proxy IP in a browser. If the proxy is anonymous, this page 应该无法检测到您的位置和 IP。
一旦您拥有可用的代理 IP 和端口,您就可以创建 webProxy 对象或简单地传递 IP 和端口。
string RefURL = "https://www.whatismyip.com/";
string myProxyIP = "119.81.197.124"; //check this is still available
int myPort = 3128;
string userId = string.Empty; //leave it blank
string password = string.Empty;
try
{
HtmlWeb web = new HtmlWeb();
var doc = web.Load(RefURL.ToString(), myProxyIP, myPort, userId, password);
Console.WriteLine(doc.DocumentNode.InnerHtml);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}