HtmlAgilityPack A utility class to compute CRC32. Compute a checksum for a given array of bytes. The array of bytes to compute the checksum for. The computed checksum. Compute a checksum for a given string. The string to compute the checksum for. The computed checksum. Represents an HTML attribute. Gets the line number of this attribute in the document. Gets the column number of this attribute in the document. Gets the stream position of the value of this attribute in the document, relative to the start of the document. Gets the length of the value. Gets the qualified name of the attribute. Name of attribute with original case Gets the HTML document to which this attribute belongs. Gets the HTML node to which this attribute belongs. Specifies what type of quote the data should be wrapped in Specifies what type of quote the data should be wrapped in (internal to keep backward compatibility) Gets the stream position of this attribute in the document, relative to the start of the document. Gets or sets the value of the attribute. Gets the DeEntitized value of the attribute. Gets a valid XPath string that points to this Attribute Compares the current instance with another attribute. Comparison is based on attributes' name. An attribute to compare with this instance. A 32-bit signed integer that indicates the relative order of the names comparison. Creates a duplicate of this attribute. The cloned attribute. Removes this attribute from it's parents collection An Enum representing different types of Quotes used for surrounding attribute values A single quote mark ' A double quote mark " No quote mark The initial value (current value) Represents a combined list and collection of HTML nodes. Gets the number of elements actually contained in the list. Gets readonly status of colelction Gets the attribute at the specified index. Gets a given attribute from the list using its name. Adds a new attribute to the collection with the given values Adds supplied item to collection Adds a range supplied items to collection. An IEnumerable<HtmlAttribute> of items to append to this. Adds a range supplied items to collection using a dictionary. A Dictionary<string,string> of items to append to this. Explicit clear Retreives existence of supplied item Copies collection to array Get Explicit enumerator Explicit non-generic enumerator Retrieves the index for the supplied item, -1 if not found Inserts given item into collection at supplied index Explicit collection remove Removes the attribute at the specified index. The index of the attribute to remove. Inserts the specified attribute as the last attribute in the collection. The attribute to insert. May not be null. The appended attribute. Creates and inserts a new attribute as the last attribute in the collection. The name of the attribute to insert. The appended attribute. Creates and inserts a new attribute as the last attribute in the collection. The name of the attribute to insert. The value of the attribute to insert. The appended attribute. Checks for existance of attribute with given name Inserts the specified attribute as the first node in the collection. The attribute to insert. May not be null. The prepended attribute. Removes a given attribute from the list. The attribute to remove. May not be null. Removes an attribute from the list, using its name. If there are more than one attributes with this name, they will all be removed. The attribute's name. May not be null. Remove all attributes in the list. Returns all attributes with specified name. Handles case insentivity Name of the attribute Removes all attributes from the collection Clears the attribute collection Represents an HTML comment. Gets or Sets the comment text of the node. Gets or Sets the HTML between the start and end tags of the object. In the case of a text node, it is equals to OuterHtml. Gets or Sets the object and its content in HTML. Represents a complete HTML document. True to disable, false to enable the behavior tag p. Default builder to use in the HtmlDocument constructor Action to execute before the Parse is executed Defines the max level we would go deep into the html document The HtmlDocument Text. Careful if you modify it. True to stay backward compatible with previous version of HAP. This option does not guarantee 100% compatibility. Adds Debugging attributes to node. Default is false. Defines if closing for non closed nodes must be done at the end or directly in the document. Setting this to true can actually change how browsers render the page. Default is false. Defines if non closed nodes will be checked at the end of parsing. Default is true. Defines if a checksum must be computed for the document while parsing. Default is false. Defines if SelectNodes method will return null or empty collection when no node matched the XPath expression. Setting this to true will return empty collection and false will return null. Default is false. True to disable, false to enable the server side code. Defines the default stream encoding to use. Default is System.Text.Encoding.Default. Force to take the original comment instead of creating it Defines if source text must be extracted while parsing errors. If the document has a lot of errors, or cascading errors, parsing performance can be dramatically affected if set to true. Default is false. Defines the maximum length of source text or parse errors. Default is 100. Defines if LI, TR, TH, TD tags must be partially fixed when nesting errors are detected. Default is false. Defines if output must conform to XML, instead of HTML. Default is false. If used together with and enabled, Xml namespaces in element names are preserved. Default is false. Defines if attribute value output must be optimized (not bound with double quotes if it is possible). Default is false. Defines the global attribute value quote. When specified, it will always win. Defines if name must be output with it's original case. Useful for asp.net tags and attributes. Default is false. Defines if name must be output in uppercase. Default is false. Defines if declared encoding must be read from the document. Declared encoding is determined using the meta http-equiv="content-type" content="text/html;charset=XXXXX" html node. Default is true. Defines the name of a node that will throw the StopperNodeException when found as an end node. Default is null. Defines if the 'id' attribute must be specifically used. Default is true. Defines if empty nodes must be written as closed during output. Default is false. The max number of nested child nodes. Added to prevent stackoverflow problem when a page has tens of thousands of opening html tags with no closing tags Creates an instance of an HTML document. Gets the parsed text. The parsed text. Defines the max level we would go deep into the html document. If this depth level is exceeded, and exception is thrown. Gets the document CRC32 checksum if OptionComputeChecksum was set to true before parsing, 0 otherwise. Gets the document's declared encoding. Declared encoding is determined using the meta http-equiv="content-type" content="text/html;charset=XXXXX" html node (pre-HTML5) or the meta charset="XXXXX" html node (HTML5). Gets the root node of the document. Gets the document's output encoding. Gets a list of parse errors found in the document. Gets the remaining text. Will always be null if OptionStopperNodeName is null. Gets the offset of Remainder in the original Html text. If OptionStopperNodeName is null, this will return the length of the original Html text. Gets the document's stream encoding. Gets a valid XML name. Any text. A string that is a valid XML name. Applies HTML encoding to a specified string. The input string to encode. May not be null. The encoded string. Determines if the specified character is considered as a whitespace character. The character to check. true if if the specified character is considered as a whitespace character. Creates an HTML attribute with the specified name. The name of the attribute. May not be null. The new HTML attribute. Creates an HTML attribute with the specified name. The name of the attribute. May not be null. The value of the attribute. The new HTML attribute. Creates an HTML comment node. The new HTML comment node. Creates an HTML comment node with the specified comment text. The comment text. May not be null. The new HTML comment node. Creates an HTML element node with the specified name. The qualified name of the element. May not be null. The new HTML node. Creates an HTML text node. The new HTML text node. Creates an HTML text node with the specified text. The text of the node. May not be null. The new HTML text node. Detects the encoding of an HTML stream. The input stream. May not be null. The detected encoding. Detects the encoding of an HTML stream. The input stream. May not be null. The html is checked. The detected encoding. Detects the encoding of an HTML text provided on a TextReader. The TextReader used to feed the HTML. May not be null. The detected encoding. Detects the encoding of an HTML text. The input html text. May not be null. The detected encoding. Gets the HTML node with the specified 'id' attribute value. The attribute id to match. May not be null. The HTML node with the matching id or null if not found. Loads an HTML document from a stream. The input stream. Loads an HTML document from a stream. The input stream. Indicates whether to look for byte order marks at the beginning of the stream. Loads an HTML document from a stream. The input stream. The character encoding to use. Loads an HTML document from a stream. The input stream. The character encoding to use. Indicates whether to look for byte order marks at the beginning of the stream. Loads an HTML document from a stream. The input stream. The character encoding to use. Indicates whether to look for byte order marks at the beginning of the stream. The minimum buffer size. Loads the HTML document from the specified TextReader. The TextReader used to feed the HTML data into the document. May not be null. Loads the HTML document from the specified string. String containing the HTML document to load. May not be null. Saves the HTML document to the specified stream. The stream to which you want to save. Saves the HTML document to the specified stream. The stream to which you want to save. May not be null. The character encoding to use. May not be null. Saves the HTML document to the specified StreamWriter. The StreamWriter to which you want to save. Saves the HTML document to the specified TextWriter. The TextWriter to which you want to save. May not be null. Saves the HTML document to the specified XmlWriter. The XmlWriter to which you want to save. Detects the encoding of an HTML document from a file first, and then loads the file. The complete file path to be read. Detects the encoding of an HTML document from a file first, and then loads the file. The complete file path to be read. May not be null. true to detect encoding, false otherwise. Detects the encoding of an HTML file. Path for the file containing the HTML document to detect. May not be null. The detected encoding. Loads an HTML document from a file. The complete file path to be read. May not be null. Loads an HTML document from a file. The complete file path to be read. May not be null. Indicates whether to look for byte order marks at the beginning of the file. Loads an HTML document from a file. The complete file path to be read. May not be null. The character encoding to use. May not be null. Loads an HTML document from a file. The complete file path to be read. May not be null. The character encoding to use. May not be null. Indicates whether to look for byte order marks at the beginning of the file. Loads an HTML document from a file. The complete file path to be read. May not be null. The character encoding to use. May not be null. Indicates whether to look for byte order marks at the beginning of the file. The minimum buffer size. Saves the mixed document to the specified file. The location of the file where you want to save the document. Saves the mixed document to the specified file. The location of the file where you want to save the document. May not be null. The character encoding to use. May not be null. Creates a new XPathNavigator object for navigating this HTML document. An XPathNavigator object. The XPathNavigator is positioned on the root of the document. Flags that describe the behavior of an Element node. The node is a CDATA node. The node is empty. META or IMG are example of such nodes. The node will automatically be closed during parsing. The node can overlap. A utility class to replace special characters by entities and vice-versa. Follows HTML 4.0 specification found at http://www.w3.org/TR/html4/sgml/entities.html Follows Additional specification found at https://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references See also: https://html.spec.whatwg.org/multipage/named-characters.html#named-character-references A collection of entities indexed by name. A collection of entities indexed by value. Replace known entities by characters. The source text. The result text. Clone and entitize an HtmlNode. This will affect attribute values and nodes' text. It will also entitize all child nodes. The node to entitize. An entitized cloned node. Replace characters above 127 by entities. The source text. The result text. Replace characters above 127 by entities. The source text. If set to false, the function will not use known entities name. Default is true. The result text. Replace characters above 127 by entities. The source text. If set to false, the function will not use known entities name. Default is true. If set to true, the [quote], [ampersand], [lower than] and [greather than] characters will be entitized. The result text Represents an HTML node. Gets the name of a comment node. It is actually defined as '#comment'. Gets the name of the document node. It is actually defined as '#document'. Gets the name of a text node. It is actually defined as '#text'. Gets a collection of flags that define specific behaviors for specific element nodes. The table contains a DictionaryEntry list with the lowercase tag name as the Key, and a combination of HtmlElementFlags as the Value. Initialize HtmlNode. Builds a list of all tags that have special allowances Initializes HtmlNode, providing type, owner and where it exists in a collection Gets the collection of HTML attributes for this node. May not be null. Gets all the children of the node. Gets a value indicating if this node has been closed or not. Gets the collection of HTML attributes for the closing tag. May not be null. Gets the closing tag of the node, null if the node is self-closing. Gets the first child of the node. Gets a value indicating whether the current node has any attributes. Gets a value indicating whether this node has any child nodes. Gets a value indicating whether the current node has any attributes on the closing tag. Gets or sets the value of the 'id' HTML attribute. The document must have been parsed using the OptionUseIdAttribute set to true. Gets or Sets the HTML between the start and end tags of the object. Gets the text between the start and end tags of the object. Gets direct inner text. The direct inner text. Gets the last child of the node. Gets the line number of this node in the document. Gets the column number of this node in the document. Gets the stream position of the area between the opening and closing tag of the node, relative to the start of the document. Gets the stream position of the area of the beginning of the tag, relative to the start of the document. Gets the length of the area between the opening and closing tag of the node. Gets the length of the entire node, opening and closing tag included. Gets or sets this node's name. Gets the HTML node immediately following this element. Gets the type of this node. The original unaltered name of the tag Gets or Sets the object and its content in HTML. Gets the to which this node belongs. Gets the parent of this node (for nodes that can have parents). Gets the node immediately preceding this node. Gets the stream position of this node in the document, relative to the start of the document. Gets a valid XPath string that points to this node The depth of the node relative to the opening root html element. This value is used to determine if a document has to many nested html nodes which can cause stack overflows Determines if an element node can be kept overlapped. The name of the element node to check. May not be null. true if the name is the name of an element node that can be kept overlapped, false otherwise. Creates an HTML node from a string representing literal HTML. The HTML text. The newly created node instance. Creates an HTML node from a string representing literal HTML. The HTML text. The HTML Document builder. The newly created node instance. Determines if an element node is a CDATA element node. The name of the element node to check. May not be null. true if the name is the name of a CDATA element node, false otherwise. Determines if an element node is closed. The name of the element node to check. May not be null. true if the name is the name of a closed element node, false otherwise. Determines if an element node is defined as empty. The name of the element node to check. May not be null. true if the name is the name of an empty element node, false otherwise. Determines if a text corresponds to the closing tag of an node that can be kept overlapped. The text to check. May not be null. true or false. Returns a collection of all ancestor nodes of this element. Get Ancestors with matching name Returns a collection of all ancestor nodes of this element. Gets all anscestor nodes and the current node Adds the specified node to the end of the list of children of this node. The node to add. May not be null. The node added. Sets child nodes identifier. The chil node. Adds the specified node to the end of the list of children of this node. The node list to add. May not be null. Gets all Attributes with name Creates a duplicate of the node Creates a duplicate of the node and changes its name at the same time. The new name of the cloned node. May not be null. The cloned node. Creates a duplicate of the node and changes its name at the same time. The new name of the cloned node. May not be null. true to recursively clone the subtree under the specified node; false to clone only the node itself. The cloned node. Creates a duplicate of the node. true to recursively clone the subtree under the specified node; false to clone only the node itself. The cloned node. Creates a duplicate of the node and the subtree under it. The node to duplicate. May not be null. Creates a duplicate of the node. The node to duplicate. May not be null. true to recursively clone the subtree under the specified node, false to clone only the node itself. Gets all Descendant nodes for this node and each of child nodes The depth level of the node to parse in the html tree the current element as an HtmlNode Returns a collection of all descendant nodes of this element, in document order Gets all Descendant nodes in enumerated list Gets all Descendant nodes in enumerated list Get all descendant nodes with matching name Returns a collection of all descendant nodes of this element, in document order Gets all descendant nodes including this node Gets first generation child node matching name Gets matching first generation child nodes matching name Gets data attribute. The key. The data attribute. Gets the data attributes in this collection. An enumerator that allows foreach to be used to process the data attributes in this collection. Gets the attributes in this collection. An enumerator that allows foreach to be used to process the attributes in this collection. Gets the attributes in this collection. A variable-length parameters list containing attribute names. An enumerator that allows foreach to be used to process the attributes in this collection. Helper method to get the value of an attribute of this node. If the attribute is not found, the default value will be returned. The name of the attribute to get. May not be null. The default value to return if not found. The value of the attribute if found, the default value if not found. Helper method to get the value of an attribute of this node. If the attribute is not found, the default value will be returned. The name of the attribute to get. May not be null. The default value to return if not found. The value of the attribute if found, the default value if not found. Helper method to get the value of an attribute of this node. If the attribute is not found, the default value will be returned. The name of the attribute to get. May not be null. The default value to return if not found. The value of the attribute if found, the default value if not found. Inserts the specified node immediately after the specified reference node. The node to insert. May not be null. The node that is the reference node. The newNode is placed after the refNode. The node being inserted. Inserts the specified node immediately before the specified reference node. The node to insert. May not be null. The node that is the reference node. The newChild is placed before this node. The node being inserted. Adds the specified node to the beginning of the list of children of this node. The node to add. May not be null. The node added. Adds the specified node list to the beginning of the list of children of this node. The node list to add. May not be null. Removes node from parent collection Removes all the children and/or attributes of the current node. Removes all the children of the current node. Removes all id for node described by node. The node. Move a node already associated and append it to this node instead. The child node to move. Move a children collection already associated and append it to this node instead. The children collection already associated to move to another node. Removes the children collection for this node. The old children collection to remove. Removes the specified child node. The node being removed. May not be null. The node removed. Removes the specified child node. The node being removed. May not be null. true to keep grand children of the node, false otherwise. The node removed. Replaces the child node oldChild with newChild node. The new node to put in the child list. The node being replaced in the list. The node replaced. Helper method to set the value of an attribute of this node. If the attribute is not found, it will be created automatically. The name of the attribute to set. May not be null. The value for the attribute. The corresponding attribute instance. Saves all the children of the node to the specified TextWriter. The TextWriter to which you want to save. Identifies the level we are in starting at root with 0 Saves all the children of the node to a string. The saved string. Saves the current node to the specified TextWriter. The TextWriter to which you want to save. identifies the level we are in starting at root with 0 Saves the current node to the specified XmlWriter. The XmlWriter to which you want to save. Saves the current node to a string. The saved string. Sets the parent Html node and properly determines the current node's depth using the parent node's depth. Adds one or more classes to this node. The node list to add. May not be null. Adds one or more classes to this node. The node list to add. May not be null. true to throw Error if class name exists, false otherwise. Removes the class attribute from the node. Removes the class attribute from the node. true to throw Error if class name doesn't exist, false otherwise. Removes the specified class from the node. The class being removed. May not be null. Removes the specified class from the node. The class being removed. May not be null. true to throw Error if class name doesn't exist, false otherwise. Replaces the class name oldClass with newClass name. The new class name. The class being replaced. Replaces the class name oldClass with newClass name. The new class name. The class being replaced. true to throw Error if class name doesn't exist, false otherwise. Gets the CSS Class from the node. The CSS Class from the node Check if the node class has the parameter class. The class. True if node class has the parameter class, false if not. Fill an object and go through it's properties and fill them too. Type of object to want to fill. It should have atleast one property that defined XPath. Returns an object of type T including Encapsulated data. Why it's thrown. Why it's thrown. Why it's thrown. Why it's thrown. Why it's thrown. Why it's thrown. Why it's thrown. Why it's thrown. Why it's thrown. Fill an object and go through it's properties and fill them too. Type of object to want to fill. It should have atleast one property that defined XPath. If htmlDocument includes data , leave this parameter null. Else pass your specific htmldocument. Returns an object of type T including Encapsulated data. Why it's thrown. Why it's thrown. Why it's thrown. Why it's thrown. Why it's thrown. Why it's thrown. Why it's thrown. Why it's thrown. Why it's thrown. Fill an object and go through it's properties and fill them too. Type of object to want to fill. It should have atleast one property that defined XPath. If htmlDocument includes data , leave this parameter null. Else pass your specific htmldocument. Returns an object of type targetType including Encapsulated data. Why it's thrown. Why it's thrown. Why it's thrown. Why it's thrown. Why it's thrown. Why it's thrown. Why it's thrown. Why it's thrown. Why it's thrown. Creates a new XPathNavigator object for navigating this HTML node. An XPathNavigator object. The XPathNavigator is positioned on the node from which the method was called. It is not positioned on the root of the document. Creates an XPathNavigator using the root of this document. Selects a list of nodes matching the expression. The XPath expression. An containing a collection of nodes matching the query, or null if no node matched the XPath expression. Selects a list of nodes matching the expression. The XPath expression. An containing a collection of nodes matching the query, or null if no node matched the XPath expression. Selects the first XmlNode that matches the XPath expression. The XPath expression. May not be null. The first that matches the XPath query or a null reference if no matching node was found. Selects a list of nodes matching the expression. The XPath expression. An containing a collection of nodes matching the query, or null if no node matched the XPath expression. Includes tools that GetEncapsulatedData method uses them. Determine if a type define an attribute or not , supporting both .NetStandard and .NetFramework2.0 Type you want to test it. Attribute that type must have or not. If true , The type parameter define attributeType parameter. Retrive properties of type that defined . Type that you want to find it's XPath-Defined properties. IEnumerable of property infos of a type , that defined specific attribute. Determine if a has implemented BUT is considered as NONE-IEnumerable ! The property info you want to test. True if property info is IEnumerable. Returns T type(first generic type) of or . IEnumerable-Implemented property List of generic types. Find and Return a mehtod that defined in a class by it's name. Type of class include requested method. Name of requested method as string. Method info of requested method. Create of given type. Type that you want to make a List of it. Returns IList of given type. Returns the part of value of you want as . A htmlNode instance. Attribute that includes ReturnType String that choosen from HtmlNode as result. Returns parts of values of you want as . that you want to retrive each value. A instnce incules . Type of IList generic you want. Simulate Func method to use in Lambada Expression. This method works like Where method in LINQ. Check if the type can instantiated. Returns count of elements stored in IEnumerable of T Specify which part of is requested. The text between the start and end tags of the object. The HTML between the start and end tags of the object The object and its content in HTML Just mark and flag classes to show they have properties that defined . Includes XPath and . XPath for finding html tags and for specify which part of you want to return. XPath Expression that is used to find related html node. Html Attribute name The methode of output Specify Xpath to find related Html Node. Specify Xpath to find related Html Node. Specify you want the output include html text too. Specify Xpath and Attribute to find related Html Node and its attribute value. Tagging a property with this Attribute make Encapsulator to ignore that property if it causes an error. Exception that often occures when there is no way to bind a XPath to a Html Tag. Exception that often occures when there is no way to bind a XPath to a HtmlTag Attribute. Exception that often occures when there is no property that assigned with XPath Property in Class. Represents a combined list and collection of HTML nodes. Initialize the HtmlNodeCollection with the base parent node The base node of the collection Gets the parent node associated to the collection. Gets a given node from the list. Get node with tag name Gets the number of elements actually contained in the list. Is collection read only Gets the node at the specified index. Add node to the collection Add node to the collection Clears out the collection of HtmlNodes. Removes each nodes reference to parentnode, nextnode and prevnode Gets existence of node in collection Copy collection to array Get Enumerator Get Explicit Enumerator Get index of node Insert node at index Remove node Remove at index Get first instance of node in supplied collection Add node to the end of the collection Get first instance of node with name Get index of node Add node to the beginning of the collection Remove node at index Replace node at index Get all node descended from this collection Get all node descended from this collection with matching name Gets all first generation elements in collection Gets all first generation elements matching name All first generation nodes in collection Represents an HTML navigator on an HTML document seen as a data store. Initializes a new instance of the HtmlNavigator and loads an HTML document from a stream. The input stream. Initializes a new instance of the HtmlNavigator and loads an HTML document from a stream. The input stream. Indicates whether to look for byte order marks at the beginning of the stream. Initializes a new instance of the HtmlNavigator and loads an HTML document from a stream. The input stream. The character encoding to use. Initializes a new instance of the HtmlNavigator and loads an HTML document from a stream. The input stream. The character encoding to use. Indicates whether to look for byte order marks at the beginning of the stream. Initializes a new instance of the HtmlNavigator and loads an HTML document from a stream. The input stream. The character encoding to use. Indicates whether to look for byte order marks at the beginning of the stream. The minimum buffer size. Initializes a new instance of the HtmlNavigator and loads an HTML document from a TextReader. The TextReader used to feed the HTML data into the document. Gets the base URI for the current node. Always returns string.Empty in the case of HtmlNavigator implementation. Gets the current HTML document. Gets the current HTML node. Gets a value indicating whether the current node has child nodes. Gets a value indicating whether the current node has child nodes. Gets a value indicating whether the current node is an empty element. Gets the name of the current HTML node without the namespace prefix. Gets the qualified name of the current node. Gets the namespace URI (as defined in the W3C Namespace Specification) of the current node. Always returns string.Empty in the case of HtmlNavigator implementation. Gets the associated with this implementation. Gets the type of the current node. Gets the prefix associated with the current node. Always returns string.Empty in the case of HtmlNavigator implementation. Gets the text value of the current node. Gets the xml:lang scope for the current node. Always returns string.Empty in the case of HtmlNavigator implementation. Creates a new HtmlNavigator positioned at the same node as this HtmlNavigator. A new HtmlNavigator object positioned at the same node as the original HtmlNavigator. Gets the value of the HTML attribute with the specified LocalName and NamespaceURI. The local name of the HTML attribute. The namespace URI of the attribute. Unsupported with the HtmlNavigator implementation. The value of the specified HTML attribute. String.Empty or null if a matching attribute is not found or if the navigator is not positioned on an element node. Returns the value of the namespace node corresponding to the specified local name. Always returns string.Empty for the HtmlNavigator implementation. The local name of the namespace node. Always returns string.Empty for the HtmlNavigator implementation. Determines whether the current HtmlNavigator is at the same position as the specified HtmlNavigator. The HtmlNavigator that you want to compare against. true if the two navigators have the same position, otherwise, false. Moves to the same position as the specified HtmlNavigator. The HtmlNavigator positioned on the node that you want to move to. true if successful, otherwise false. If false, the position of the navigator is unchanged. Moves to the HTML attribute with matching LocalName and NamespaceURI. The local name of the HTML attribute. The namespace URI of the attribute. Unsupported with the HtmlNavigator implementation. true if the HTML attribute is found, otherwise, false. If false, the position of the navigator does not change. Moves to the first sibling of the current node. true if the navigator is successful moving to the first sibling node, false if there is no first sibling or if the navigator is currently positioned on an attribute node. Moves to the first HTML attribute. true if the navigator is successful moving to the first HTML attribute, otherwise, false. Moves to the first child of the current node. true if there is a first child node, otherwise false. Moves the XPathNavigator to the first namespace node of the current element. Always returns false for the HtmlNavigator implementation. An XPathNamespaceScope value describing the namespace scope. Always returns false for the HtmlNavigator implementation. Moves to the node that has an attribute of type ID whose value matches the specified string. A string representing the ID value of the node to which you want to move. This argument does not need to be atomized. true if the move was successful, otherwise false. If false, the position of the navigator is unchanged. Moves the XPathNavigator to the namespace node with the specified local name. Always returns false for the HtmlNavigator implementation. The local name of the namespace node. Always returns false for the HtmlNavigator implementation. Moves to the next sibling of the current node. true if the navigator is successful moving to the next sibling node, false if there are no more siblings or if the navigator is currently positioned on an attribute node. If false, the position of the navigator is unchanged. Moves to the next HTML attribute. Moves the XPathNavigator to the next namespace node. Always returns falsefor the HtmlNavigator implementation. An XPathNamespaceScope value describing the namespace scope. Always returns false for the HtmlNavigator implementation. Moves to the parent of the current node. true if there is a parent node, otherwise false. Moves to the previous sibling of the current node. true if the navigator is successful moving to the previous sibling node, false if there is no previous sibling or if the navigator is currently positioned on an attribute node. Moves to the root node to which the current node belongs. Represents the type of a node. The root of a document. An HTML element. An HTML comment. A text node is always the child of an element or a document node. Represents a parsing error found during document parsing. Gets the type of error. Gets the line number of this error in the document. Gets the column number of this error in the document. Gets a description for the error. Gets the the full text of the line containing the error. Gets the absolute stream position of this error in the document, relative to the start of the document. Represents the type of parsing error. A tag was not closed. A tag was not opened. There is a charset mismatch between stream and declared (META) encoding. An end tag was not required. An end tag is invalid at this position. Represents an HTML text node. Gets or Sets the HTML between the start and end tags of the object. In the case of a text node, it is equals to OuterHtml. Gets or Sets the object and its content in HTML. Gets or Sets the text of the node. A utility class to get HTML document from HTTP. Represents the method that will handle the PostResponse event. Represents the method that will handle the PreHandleDocument event. Represents the method that will handle the PostResponse event. Occurs after an HTTP request has been executed. Occurs before an HTML document is handled. Occurs before an HTTP request is executed. Gets or Sets a value indicating if document encoding must be automatically detected. Gets or sets the Encoding used to override the response stream from any web request Gets or Sets a value indicating whether to get document only from the cache. If this is set to true and document is not found in the cache, nothing will be loaded. Gets or Sets a value indicating whether to get document from the cache if exists, otherwise from the web A value indicating whether to get document from the cache if exists, otherwise from the web Gets or Sets the cache path. If null, no caching mechanism will be used. Gets a value indicating if the last document was retrieved from the cache. Gets the last request duration in milliseconds. Gets the URI of the Internet resource that actually responded to the request. Gets the last request status. Gets or Sets the size of the buffer used for memory operations. Gets or Sets a value indicating if cookies will be stored. Gets or sets a value indicating whether redirect should be captured instead of the current location. True if capture redirect, false if not. Gets or Sets the User Agent HTTP 1.1 header sent on any webrequest Gets or Sets a value indicating whether the caching mechanisms should be used or not. Gets an HTML document from an Internet resource and saves it to the specified file. The requested URL, such as "http://Myserver/Mypath/Myfile.asp". The location of the file where you want to save the document. Gets an HTML document from an Internet resource and saves it to the specified file. - Proxy aware The requested URL, such as "http://Myserver/Mypath/Myfile.asp". The location of the file where you want to save the document. Gets an HTML document from an Internet resource and saves it to the specified file. The requested URL, such as "http://Myserver/Mypath/Myfile.asp". The location of the file where you want to save the document. The HTTP method used to open the connection, such as GET, POST, PUT, or PROPFIND. Gets an HTML document from an Internet resource and saves it to the specified file. Understands Proxies The requested URL, such as "http://Myserver/Mypath/Myfile.asp". The location of the file where you want to save the document. The HTTP method used to open the connection, such as GET, POST, PUT, or PROPFIND. Gets the cache file path for a specified url. The url fo which to retrieve the cache path. May not be null. The cache file path. Gets an HTML document from an Internet resource. The requested URL, such as "http://Myserver/Mypath/Myfile.asp". A new HTML document. Gets an HTML document from an Internet resource. The requested Uri, such as new Uri("http://Myserver/Mypath/Myfile.asp"). A new HTML document. Loads an HTML document from an Internet resource. The requested URL, such as "http://Myserver/Mypath/Myfile.asp". The HTTP method used to open the connection, such as GET, POST, PUT, or PROPFIND. A new HTML document. Loads an HTML document from an Internet resource. The requested URL, such as new Uri("http://Myserver/Mypath/Myfile.asp"). The HTTP method used to open the connection, such as GET, POST, PUT, or PROPFIND. A new HTML document. Loads an HTML document from an Internet resource. The requested URL, such as "http://Myserver/Mypath/Myfile.asp". The HTTP method used to open the connection, such as GET, POST, PUT, or PROPFIND. Proxy to use with this request Credentials to use when authenticating A new HTML document. Loads an HTML document from an Internet resource. The requested Uri, such as new Uri("http://Myserver/Mypath/Myfile.asp"). The HTTP method used to open the connection, such as GET, POST, PUT, or PROPFIND. Proxy to use with this request Credentials to use when authenticating A new HTML document. Loads an HTML document from an Internet resource and saves it to the specified XmlTextWriter. The requested URL, such as "http://Myserver/Mypath/Myfile.asp". The XmlTextWriter to which you want to save to. Begins the process of downloading an internet resource Url to the html document Begins the process of downloading an internet resource Url to the html document A cancellation token that can be used by other objects or threads to receive notice of cancellation. Begins the process of downloading an internet resource Url to the html document The encoding to use while downloading the document Begins the process of downloading an internet resource Url to the html document The encoding to use while downloading the document A cancellation token that can be used by other objects or threads to receive notice of cancellation. Begins the process of downloading an internet resource Url to the html document The encoding to use while downloading the document Username to use for credentials in the web request Password to use for credentials in the web request Begins the process of downloading an internet resource Url to the html document The encoding to use while downloading the document Username to use for credentials in the web request Password to use for credentials in the web request A cancellation token that can be used by other objects or threads to receive notice of cancellation. Begins the process of downloading an internet resource Url to the html document The encoding to use while downloading the document Username to use for credentials in the web request Password to use for credentials in the web request Domain to use for credentials in the web request Begins the process of downloading an internet resource Url to the html document The encoding to use while downloading the document Username to use for credentials in the web request Password to use for credentials in the web request Domain to use for credentials in the web request A cancellation token that can be used by other objects or threads to receive notice of cancellation. Begins the process of downloading an internet resource Url to the html document Username to use for credentials in the web request Password to use for credentials in the web request Domain to use for credentials in the web request Begins the process of downloading an internet resource Url to the html document Username to use for credentials in the web request Password to use for credentials in the web request Domain to use for credentials in the web request A cancellation token that can be used by other objects or threads to receive notice of cancellation. Begins the process of downloading an internet resource Url to the html document Username to use for credentials in the web request Password to use for credentials in the web request Begins the process of downloading an internet resource Url to the html document Username to use for credentials in the web request Password to use for credentials in the web request A cancellation token that can be used by other objects or threads to receive notice of cancellation. Begins the process of downloading an internet resource Url to the html document The credentials to use for authenticating the web request Begins the process of downloading an internet resource Url to the html document The credentials to use for authenticating the web request A cancellation token that can be used by other objects or threads to receive notice of cancellation. Begins the process of downloading an internet resource Url to the html document The encoding to use while downloading the document The credentials to use for authenticating the web request Begins the process of downloading an internet resource Url to the html document The encoding to use while downloading the document The credentials to use for authenticating the web request A cancellation token that can be used by other objects or threads to receive notice of cancellation. Represents an exception thrown by the HtmlWeb utility class. Creates an instance of the HtmlWebException. The exception's message. Represents a document with mixed code and text. ASP, ASPX, JSP, are good example of such documents. Gets or sets the token representing code end. Gets or sets the token representing code start. Gets or sets the token representing code directive. Gets or sets the token representing response write directive. Creates a mixed code document instance. Gets the code represented by the mixed code document seen as a template. Gets the list of code fragments in the document. Gets the list of all fragments in the document. Gets the encoding of the stream used to read the document. Gets the list of text fragments in the document. Create a code fragment instances. The newly created code fragment instance. Create a text fragment instances. The newly created text fragment instance. Loads a mixed code document from a stream. The input stream. Loads a mixed code document from a stream. The input stream. Indicates whether to look for byte order marks at the beginning of the file. Loads a mixed code document from a stream. The input stream. The character encoding to use. Loads a mixed code document from a stream. The input stream. The character encoding to use. Indicates whether to look for byte order marks at the beginning of the file. Loads a mixed code document from a stream. The input stream. The character encoding to use. Indicates whether to look for byte order marks at the beginning of the file. The minimum buffer size. Loads a mixed code document from a file. The complete file path to be read. Loads a mixed code document from a file. The complete file path to be read. Indicates whether to look for byte order marks at the beginning of the file. Loads a mixed code document from a file. The complete file path to be read. The character encoding to use. Loads a mixed code document from a file. The complete file path to be read. The character encoding to use. Indicates whether to look for byte order marks at the beginning of the file. Loads a mixed code document from a file. The complete file path to be read. The character encoding to use. Indicates whether to look for byte order marks at the beginning of the file. The minimum buffer size. Loads the mixed code document from the specified TextReader. The TextReader used to feed the HTML data into the document. Loads a mixed document from a text The text to load. Saves the mixed document to the specified stream. The stream to which you want to save. Saves the mixed document to the specified stream. The stream to which you want to save. The character encoding to use. Saves the mixed document to the specified file. The location of the file where you want to save the document. Saves the mixed document to the specified file. The location of the file where you want to save the document. The character encoding to use. Saves the mixed document to the specified StreamWriter. The StreamWriter to which you want to save. Saves the mixed document to the specified TextWriter. The TextWriter to which you want to save. Represents a fragment of code in a mixed code document. Gets the fragment code text. Represents a base class for fragments in a mixed code document. Gets the fragement text. Gets the type of fragment. Gets the line number of the fragment. Gets the line position (column) of the fragment. Gets the fragment position in the document's stream. Represents a list of mixed code fragments. Gets the Document Gets the number of fragments contained in the list. Gets a fragment from the list using its index. Gets an enumerator that can iterate through the fragment list. Appends a fragment to the list of fragments. The fragment to append. May not be null. Gets an enumerator that can iterate through the fragment list. Prepends a fragment to the list of fragments. The fragment to append. May not be null. Remove a fragment from the list of fragments. If this fragment was not in the list, an exception will be raised. The fragment to remove. May not be null. Remove all fragments from the list. Remove a fragment from the list of fragments, using its index in the list. The index of the fragment to remove. Represents a fragment enumerator. Gets the current element in the collection. Gets the current element in the collection. Advances the enumerator to the next element of the collection. true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. Sets the enumerator to its initial position, which is before the first element in the collection. Represents the type of fragment in a mixed code document. The fragment contains code. The fragment contains text. Represents a fragment of text in a mixed code document. Gets the fragment text.