编辑网页值并按按钮提交?

时间:2015-03-18 21:47:31

标签: c# html .net html-agility-pack

HTML

    <head></head>
    <body class=" products show us">

    <header id="header"></header>
    <div id="wrap">
        ::before
        <div id="container" style="opacity: 1;">
            <div class="sidebar"></div>
            <article itemtype="http://schema.org/Product" itemscope="itemscope">
                ::before
                <figure>
                    <img id="img-main" src="test.jpg" itemprop="image" alt="test"></img>

        <div id="zoom-lens"></div>
        <div id="zoom-holder" style="background: url("test.jpg") no-repeat scroll 0px 0px transparent;" data-background-image="test.jpg"></div>
    </figure>
    ::after

</article>
<div id="details" data-style-limited-with-count="0" data-style-limited="false">

    <h1 itemprop="name"></h1>
    <p class="style" itemprop="model">

        White

    </p>
    <p class="description" itemprop="description"></p>
    <ul class="styles "> // STEP 1: GENERATE LIST OF STYLES PER data-style-name and select the one that matches via adding "selected" to a class""!
        ::before
        <li>
            <a class="selected" data-style-name="White" data-style-id="10570" data-sold-out="false" data-images="{"detail_url":"..."..."}" href="..." data-no-tubolink="data-no-tubolink"></a>

</li>
<li>

    <a class="" data-style-name="Black" data-style-id="10571" data-sold-out="true" data-images="{"detail_url":"..."..."}" href="..." data-no-tubolink="data-no-tubolink"></a>

    </li>
    ::after

</ul>
<p class="price" itemtype="http://schema.org/Offer" itemscope="itemscope" itemprop="offers"></p>

<div id="cart-controls">

    <div id="cart-controls"> // STEP 2 => OPEN THIS!
        <form id="cart-addf" class="add" method="post" data-remote="true" action="/shop/168934/add" accept-charset="UTF-8">

    <div style="margin:0;padding:0;display:inline"></div> // STEP 3: GENERATE LIST OF OPTIONS (UNKNOWN AMOUNT OF FIELDSETS) AND SELECT OPTION(S)!
    <fieldset>
        <select id="size" name="size">
            <option value="25134"></option>
            <option value="25135"></option>
            <option value="25136"></option>
        </select>
    </fieldset>
    <fieldset>
        <select id="qty" name="qty">
            <option value="1"></option>
            <option value="2"></option>
            <option value="3"></option>
            <option value="4"></option>
            <option value="5"></option>
            <option value="6"></option>
            <option value="7"></option>
            <option value="8"></option>
        </select>
        <a class="next" href="..."></a>
    </fieldset>
    <fieldset id="add-remove-buttons">
        <input class="button" type="submit" value="add to cart" name="commit"></input> // STEP 4: CLICK BUTTON!

                                    <a class="button continue" href="/shop"></a>
                                </fieldset>
                            </form>
                        </div>
                    </div>
                    <script id="cart-controls-add" type="text/x-nano-tmpl"></script>
                    <script id="cart-controls-remove" type="text/x-nano-tmpl"></script>
                    <script id="cart-controls-sold-out" type="text/x-nano-tmpl"></script>
                    <script id="cart-controls-limited" type="text/x-nano-tmpl"></script>
                </div>
            </div>
            ::after
        </div>
        <footer id="nav" style="opacity: 1;"></footer>
        <script type="text/javascript"></script>
        <script type="text/javascript"></script>
        <script type="text/javascript"></script>
    </body>

</html>

DESC

以上是我想访问的HTML代码,修改值,&amp;然后提交数据。

我正在使用c#net 4.0和HTMLAGILITYPACK来实现这一目标。

我在HTML中写了4条总评论(总共需要4件事)。

我想知道HTMLAGILITYPACK是否可以实现编辑值的目标,是否可以点击网页上的按钮来提交要编辑的值。

我找到了一些关于此事的参考文献,但不知道如何正确使用。

1:How to click a link element programmatially with HTMLElement?

2:Clicking button automatically using HtmlAgilityPack

PSEUDO CODE

 HtmlAgilityPack.HtmlDocument doc = null;
 doc = new HtmlAgilityPack.HtmlDocument();
 doc.LoadHtml(new WebClient().DownloadString("website above that contains that HTML"));

1 个答案:

答案 0 :(得分:0)

不太确定你想要完成什么,但我认为这可能是在正确的轨道上:

请参阅此内容以更改JQuery http://api.jquery.com/attr/

中的所有属性

点击此处更改/添加点击https://api.jquery.com/click/

时会发生的事情

毋庸置疑,我不认为你需要让按钮“点击它自己”,它的重点是什么呢? :P 但是你可以认为,如果你点击它,它会先做它应该做的第一件事,然后在第二件事之后,在你可能会做的JQuery点击功能中。

但是就像帕蒂所说的那样,我希望你详细说明一下,随意发表评论,并询问这篇文章中是否有不明确的内容。