使用C#.net和Web浏览器生成文本文件的源代码不起作用?
此源代码刮取不起作用;它提供一个空白文本文件作为输出:使用C#.net和Web浏览器生成文本文件的源代码不起作用?,c#,.net,web-crawler,screen-scraping,C#,.net,Web Crawler,Screen Scraping,此源代码刮取不起作用;它提供一个空白文本文件作为输出: private void button2_Click(object sender, EventArgs e) { webBrowser1.Navigate("https://www.jigsaw.com/SearchCompany.xhtml?opCode=refresh&rpage=20&order=0&orderby=0&industry=1160000&subindustry=11603
private void button2_Click(object sender, EventArgs e)
{
webBrowser1.Navigate("https://www.jigsaw.com/SearchCompany.xhtml?opCode=refresh&rpage=20&order=0&orderby=0&industry=1160000&subindustry=1160300&country=9000&country=2000&cmDead=false&count=0&screenNameType=0&screenName=&omitScreenNameType=0&omitScreenName=&rowsPerPage=200&uid=13473859&tok=1354716874406-8761960955252771794");
string MainsourceCode = webBrowser1.DocumentText;
StreamWriter sw = new StreamWriter("G:/jigsaw_info.txt", true);
sw.Write(MainsourceCode + "\n");
sw.Close();
}
你开始写得太快了。您应该等待
DocumentCompleted
事件
private void button2_Click(object sender, EventArgs e)
{
webBrowser1.DocumentCompleted += webBrowser1_DocumentCompleted;
webBrowser1.Navigate("https://www.jigsaw.com/SearchCompany.xhtml?opCode=refresh&rpage=20&order=0&orderby=0&industry=1160000&subindustry=1160300&country=9000&country=2000&cmDead=false&count=0&screenNameType=0&screenName=&omitScreenNameType=0&omitScreenName=&rowsPerPage=200&uid=13473859&tok=1354716874406-8761960955252771794");
}
void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
File.WriteAllText("G:/jigsaw_info.txt",webBrowser1.DocumentText);
}
您必须等待导航完成。导航是异步的
你能说得更清楚一点吗,你想让我把上面所有的代码移到大括号里吗?对不起,我是新来编码的。请帮助
private void button2\u单击(对象发件人,事件参数e){webBrowser1.Navigate(“URL”);string MainsourceCode=webBrowser1.DocumentText;webBrowser1.DocumentCompleted+=webBrowser1\u DocumentCompleted;void webBrowser1\u DocumentCompleted(对象发件人,WebBrowserDocumentCompletedEventArgs e){File.writealText(“G:/jigsaw_info.txt”,webBrowser1.DocumentText);}}}}}
@SantoshKumar您应该在导航之前附加到事件上
请参见上面的“我的新代码”。“这是有效的。”桑托什库马尔,这就是我所能做的。我给出了完整的工作代码。我希望你能得到更好的答案。