0
林驗證碼:我試圖從網站解析所有鏈接,但它不起作用可能是錯誤的?使用
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.IO;
using System.Text.RegularExpressions;
using HtmlAgilityPack;
namespace HtmlParser
{
public partial class Form1 : Form
{
// The HtmlWeb class is a utility class to get the HTML over HTTP
HtmlWeb htmlWeb = new HtmlWeb();
// Creates an HtmlDocument object from an URL
HtmlAgilityPack.HtmlDocument document;
// Targets a specific node
HtmlNode someNode;
public Form1()
{
InitializeComponent();
document = htmlWeb.Load("http://www.walla.co.il");
someNode = document.GetElementbyId("mynode");
// If there is no node with that Id, someNode will be null
if (someNode != null)
{
// Extracts all links within that node
IEnumerable<HtmlNode> allLinks = someNode.Descendants("a");
// Outputs the href for external links
foreach (HtmlNode link in allLinks)
{
// Checks whether the link contains an HREF attribute
if (link.Attributes.Contains("href"))
{
// Simple check: if the href begins with "http://", prints it out
if (link.Attributes["href"].Value.StartsWith("http://"))
richTextBox1.Text = link.Attributes["href"].Value.ToString();
}
}
}
}
private void Form1_Load(object sender, EventArgs e)
{
}
}
}
但它從來沒有過線:如果我不是不使用源可用 :
someNode = document.GetElementbyId("mynode");
用在該行斷點和它給我留言一個斷點沒有發生程序運行,但我沒有得到任何錯誤,但它也不起作用。
我應該怎麼辦?我不明白,我應該放在那裏,而不是「我的節點」的
你能告訴我請如何解決/修復它不首先使用AgilityPack?謝謝。 – user1363119
@ user1363119:您可以刪除虛假問號和新線正如我所說的,但我建議你先檢查一下這個[示例](http://htmlagilitypack.codeplex.com/wikipage?title=Examples)看到多麼容易是開始使用HtmlAgilityPack。 –
使用HtmlAgilityPack編輯我的問題,我不明白它很好,我猜。 – user1363119