C# - 使用Web浏览器刮擦遇到问题
我一直在尝试使用Bing搜索引擎制作Web刮板工具,以获取所有Pastebin URL。
我通过使用Web浏览器并让JavaScript运行,然后刮擦所有源来做到这一点。
string attempt = ""
^
我有2个问题。第一个问题是,如果我不编写 messagebox.show(this.attempt)
由于某种原因将是空的。另一个问题是,现在我只有9个链接,并且没有像应该下载其他页面。我认为这全是因为 MessageBox.Show(this.attempt)
thice。
我知道我的代码不是最好的,也许有很多更好的方法,但我想获得帮助以了解这里发生了什么。
非常感谢
这是我的代码:
private void Scan(Label pages)
{
string regex = @"https:\/\/pastebin.com\/[a-zA-Z0-9]+";
for (int i = 1; i <= Config.Amount_Of_Pages; i++)
{
Parse(i);
MatchCollection matches = Regex.Matches(this.attempt, regex);
MessageBox.Show(this.attempt);
foreach (Match match in matches)
{
Config.List_Of_Urls.Add(match.Value.ToString());
Config.List_Of_Urls = Config.List_Of_Urls.Distinct().ToList();
}
Config.Amount_Of_Pages_Scanned++;
pages.Invoke(new MethodInvoker(delegate { pages.Text = Config.Amount_Of_Pages_Scanned.ToString(); }));
Files.Write_Urls(Config.List_Of_Urls);
}
MessageBox.Show("Done");
}
private void Parse(int i)
{
WebBrowser wb = new WebBrowser();
wb.DocumentCompleted += Wb_DocumentCompleted;
wb.ScriptErrorsSuppressed = true;
wb.Navigate("https://www.bing.com/search?q=site%3apastebin.com++email%3apassword&first=" + i);
}
private void Wb_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
var wb = (WebBrowser)sender;
var html = wb.Document.GetElementsByTagName("HTML")[0].OuterHtml;
this.attempt = html.ToString();
/* ... */
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
(www \。)?
添加到正则。结果代码是:
(www\.)?
to regex.The result code is: