Изменить значения веб-страницы и отправить нажатием кнопки?

.net c# html 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, который я хотел бы получить, изменить значения и затем отправить данные.

Для этого я использую c # net 4.0 и HTMLAGILITYPACK.

Я написал внутри HTML выше 4 общих комментариев (всего 4 вещи, которые необходимы).

Мне было интересно, возможна ли цель редактирования значений с помощью HTMLAGILITYPACK, и если бы можно было нажать кнопку на веб-странице, чтобы отправить значения, которые будут редактироваться.

Я нашел несколько ссылок на этот вопрос, но не знаю, как правильно их использовать.

1: Как щелкнуть элемент ссылки программно с помощью HTMLElement?

2: нажатие кнопки автоматически с помощью HtmlAgilityPack

КОД PSEUDO

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

Популярные ответы

Не совсем уверен, чего вы хотите добиться, но я думаю, что это может быть на правильном пути:

См. Это, чтобы изменить любые атрибуты в JQuery http://api.jquery.com/attr/

См. Это, чтобы изменить / добавить вещи, которые произойдут, когда вы нажмете что-то https://api.jquery.com/click/

Излишне говорить, что я не думаю, что вам нужно заставить кнопку «щелкнуть себя», в чем же смысл? : P Но вы можете сделать так, что если вы нажмете на нее, сначала это произойдет, а затем вторая вещь после этого, в функции JQuery click, которую вы предположительно сделаете.

Но, как и пасты, я хотел бы, чтобы вы немного поработали, не стесняйтесь комментировать и спрашивать, не ясно ли что-то в этом посте.




Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему
Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему