0

好的,有人说要把我的代理放在一个列表中,这样我就可以为每个请求使用一个新的代理,我将代理保存到一个列表中,但我对从这里去哪里有点困惑

这是我用来生成代理列表的代码,它来自 proxies.txt 文件。

    private List<string> getProxyListFromText(string input) {

        List<string> list = new List<string>();
        StreamReader reader = new StreamReader(input);
        string item = "";
        while (item != null)
        {
            item = reader.ReadLine();
            if (item != null)
            {
                list.Add(item);                


            }

        }
        reader.Close();          
        return list;



    }

好的,这是请求,每个请求都应该从列表中检索不同的代理。

想象一个循环遍历名称列表的 for 循环,每个名称带来一个不同的请求,每个请求都应该有自己的代理,代理列表已经在上面的代码中生成,只需要一种方法我可以从列表。

    for (int i = 0; i < listBox1.Items.Count; i++)
        {

    object url;
                    WebClient wc;
                    url = getppl;
                    wc = new WebClient();

                //This should come from the proxy list
                wc.Proxy = new WebProxy(getProxyListFromText("Proxies.txt"));

                    var page = wc.DownloadString(url.ToString());
                    HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
                    doc.LoadHtml(page);
                    var pplname = doc.DocumentNode.SelectNodes("/html/body/div[3]/div/div[2]/div[2]/div/div[4]/p");
     }

我尝试了一个嵌套的 for 循环,但逻辑被束缚在某个地方。

4

1 回答 1

0

Change to:-

foreach(string prox in getProxyListFromText("Proxies.txt"))
{
 ...
 wc.Proxy = new WebProxy(prox);
 ...
}
于 2012-08-26T08:18:03.043 回答