[HtmlUnit] [htmlunit:bugs] #2018 Not Able to Select drop down into input field

RBRi via HtmlUnit-develop <[email protected]> Thu, 11 Jul 2019 19:11:18 -0000
Newsgroups gmane.comp.java.htmlunit.devel
Message-ID </p/htmlunit/bugs/2018/16ecd7ba3553f89cf6f38a72c79e2c16dc70a635.bugs@htmlunit.p.sourceforge.net>
This is a multi-part message in MIME format.
--===============4101042988303522174==
Content-Type: multipart/related;
 boundary="===============8316009086530157049=="

This is a multi-part message in MIME format.
--===============8316009086530157049==
Content-Type: multipart/alternative;
 boundary="===============3251976941660968558=="
MIME-Version: 1.0

--===============3251976941660968558==
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit

Will have a look at this.


---

** [bugs:#2018] Not Able to Select drop down into input field**

**Status:** open
**Group:** 2.35.0
**Created:** Tue Jun 25, 2019 11:30 AM UTC by Abhishek Thakur
**Last Updated:** Thu Jun 27, 2019 08:01 AM UTC
**Owner:** nobody
**Attachments:**

- [drizly_1.html](https://sourceforge.net/p/htmlunit/bugs/2018/attachment/drizly_1.html) (119.6 kB; text/html)


Hi There,


I am new to use HTMLUnit and I am working on a POC.


There is a website where if you will click on "ENTER A DELIVERY ADDRESS", it will show you a form. When you will start typing, it will make ajax calls to google and suggest you addresses . 
I am trying to use an address and select the suggested address in this website but I am not able to select the drop down  even if I am able to click the first child.

My sample code is as below

        WebClient webClient = new WebClient(browserVersion);

        WebClientOptions webClientOption = webClient.getOptions();
        webClientOption.setCssEnabled(false);
        webClientOption.setJavaScriptEnabled(true);
        webClientOption.setUseInsecureSSL(true);
        webClientOption.setTimeout(30000);
        webClientOption.setThrowExceptionOnScriptError(false);
        webClientOption.setThrowExceptionOnFailingStatusCode(false);;
        webClientOption.setPopupBlockerEnabled(false);
        webClientOption.setRedirectEnabled(true);
        webClient.setAjaxController(new NicelyResynchronizingAjaxController());
        
        String searchUrl = "https://drizly.com/cart";
        
        WebRequest request = new WebRequest(new URL(searchUrl));
        
         HtmlPage currentPage = webClient.getPage(request);
         HtmlElement element = page.getFirstByXPath("/html/body/div[1]/header/div[2]/div/address/p");
             page = element.click();
             
              HtmlElement element = page.getFirstByXPath("//*[@id="address_field"]");
              try {
                ((HtmlTextInput) element).click();
                ((HtmlTextInput) element).type("457 Hudson Street, New York, NY, USA");
            } catch (IOException e) {
                e.printStackTrace();
            }
            
                        try {
                Thread.sleep(5000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
        
         try {
            HtmlDivision firstChild = page.getFirstByXPath("/html/body/div[7]/div");
            page =  firstChild.click();
        } catch (IOException e) {
            e.printStackTrace();
        }

        try {
            Thread.sleep(5000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
             System.out.println(page.asXml());
         
         
         
         I have attached the sample output html file which I am getting after running the above code.
        
Please help me in finding out the issue with the code. Thanking you in advance.




Regards,
Abhishek Thakur














---

Sent from sourceforge.net because [email protected] is subscribed to https://sourceforge.net/p/htmlunit/bugs/

To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/htmlunit/admin/bugs/options.  Or, if this is a mailing list, you can unsubscribe from the mailing list.
--===============3251976941660968558==
MIME-Version: 1.0
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: 7bit

<div class="markdown_content"><p>Will have a look at this.</p>
<hr/>
<p><strong> <a class="alink" href="https://sourceforge.net/p/htmlunit/bugs/2018/">[bugs:#2018]</a> Not Able to Select drop down into input field</strong></p>
<p><strong>Status:</strong> open<br/>
<strong>Group:</strong> 2.35.0<br/>
<strong>Created:</strong> Tue Jun 25, 2019 11:30 AM UTC by Abhishek Thakur<br/>
<strong>Last Updated:</strong> Thu Jun 27, 2019 08:01 AM UTC<br/>
<strong>Owner:</strong> nobody<br/>
<strong>Attachments:</strong></p>
<ul>
<li><a class="" href="https://sourceforge.net/p/htmlunit/bugs/2018/attachment/drizly_1.html">drizly_1.html</a> (119.6 kB; text/html)</li>
</ul>
<p>Hi There,</p>
<p>I am new to use HTMLUnit and I am working on a POC.</p>
<p>There is a website where if you will click on "ENTER A DELIVERY ADDRESS", it will show you a form. When you will start typing, it will make ajax calls to google and suggest you addresses . <br/>
I am trying to use an address and select the suggested address in this website but I am not able to select the drop down  even if I am able to click the first child.</p>
<p>My sample code is as below</p>
<div class="codehilite"><pre><span></span>    <span class="nt">WebClient</span> <span class="nt">webClient</span> <span class="o">=</span> <span class="nt">new</span> <span class="nt">WebClient</span><span class="o">(</span><span class="nt">browserVersion</span><span class="o">);</span>

    <span class="nt">WebClientOptions</span> <span class="nt">webClientOption</span> <span class="o">=</span> <span class="nt">webClient</span><span class="p">.</span><span class="nc">getOptions</span><span class="o">();</span>
    <span class="nt">webClientOption</span><span class="p">.</span><span class="nc">setCssEnabled</span><span class="o">(</span><span class="nt">false</span><span class="o">);</span>
    <span class="nt">webClientOption</span><span class="p">.</span><span class="nc">setJavaScriptEnabled</span><span class="o">(</span><span class="nt">true</span><span class="o">);</span>
    <span class="nt">webClientOption</span><span class="p">.</span><span class="nc">setUseInsecureSSL</span><span class="o">(</span><span class="nt">true</span><span class="o">);</span>
    <span class="nt">webClientOption</span><span class="p">.</span><span class="nc">setTimeout</span><span class="o">(</span><span class="nt">30000</span><span class="o">);</span>
    <span class="nt">webClientOption</span><span class="p">.</span><span class="nc">setThrowExceptionOnScriptError</span><span class="o">(</span><span class="nt">false</span><span class="o">);</span>
    <span class="nt">webClientOption</span><span class="p">.</span><span class="nc">setThrowExceptionOnFailingStatusCode</span><span class="o">(</span><span class="nt">false</span><span class="o">);;</span>
    <span class="nt">webClientOption</span><span class="p">.</span><span class="nc">setPopupBlockerEnabled</span><span class="o">(</span><span class="nt">false</span><span class="o">);</span>
    <span class="nt">webClientOption</span><span class="p">.</span><span class="nc">setRedirectEnabled</span><span class="o">(</span><span class="nt">true</span><span class="o">);</span>
    <span class="nt">webClient</span><span class="p">.</span><span class="nc">setAjaxController</span><span class="o">(</span><span class="nt">new</span> <span class="nt">NicelyResynchronizingAjaxController</span><span class="o">());</span>

    <span class="nt">String</span> <span class="nt">searchUrl</span> <span class="o">=</span> <span class="s2">"https://drizly.com/cart"</span><span class="o">;</span>

    <span class="nt">WebRequest</span> <span class="nt">request</span> <span class="o">=</span> <span class="nt">new</span> <span class="nt">WebRequest</span><span class="o">(</span><span class="nt">new</span> <span class="nt">URL</span><span class="o">(</span><span class="nt">searchUrl</span><span class="o">));</span>

     <span class="nt">HtmlPage</span> <span class="nt">currentPage</span> <span class="o">=</span> <span class="nt">webClient</span><span class="p">.</span><span class="nc">getPage</span><span class="o">(</span><span class="nt">request</span><span class="o">);</span>
     <span class="nt">HtmlElement</span> <span class="nt">element</span> <span class="o">=</span> <span class="nt">page</span><span class="p">.</span><span class="nc">getFirstByXPath</span><span class="o">(</span><span class="s2">"/html/body/div</span><span class="cp">[</span><span class="mi">1</span><span class="cp">]</span><span class="s2">/header/div</span><span class="cp">[</span><span class="mi">2</span><span class="cp">]</span><span class="s2">/div/address/p"</span><span class="o">);</span>
         <span class="nt">page</span> <span class="o">=</span> <span class="nt">element</span><span class="p">.</span><span class="nc">click</span><span class="o">();</span>

          <span class="nt">HtmlElement</span> <span class="nt">element</span> <span class="o">=</span> <span class="nt">page</span><span class="p">.</span><span class="nc">getFirstByXPath</span><span class="o">(</span><span class="s2">"//*</span><span class="cp">[</span><span class="p">@</span><span class="n">id</span><span class="o">=</span><span class="s2">"address_field"</span><span class="cp">]</span><span class="s2">"</span><span class="o">);</span>
          <span class="nt">try</span> <span class="p">{</span>
            <span class="err">((HtmlTextInput)</span> <span class="err">element).click()</span><span class="p">;</span>
            <span class="err">((HtmlTextInput)</span> <span class="err">element).type("457</span> <span class="err">Hudson</span> <span class="err">Street,</span> <span class="err">New</span> <span class="err">York,</span> <span class="err">NY,</span> <span class="err">USA")</span><span class="p">;</span>
        <span class="p">}</span> <span class="nt">catch</span> <span class="o">(</span><span class="nt">IOException</span> <span class="nt">e</span><span class="o">)</span> <span class="p">{</span>
            <span class="err">e.printStackTrace()</span><span class="p">;</span>
        <span class="p">}</span>

                    <span class="nt">try</span> <span class="p">{</span>
            <span class="err">Thread.sleep(5000)</span><span class="p">;</span>
        <span class="p">}</span> <span class="nt">catch</span> <span class="o">(</span><span class="nt">InterruptedException</span> <span class="nt">e</span><span class="o">)</span> <span class="p">{</span>
            <span class="err">e.printStackTrace()</span><span class="p">;</span>
        <span class="p">}</span>
    <span class="err">}</span>

     <span class="nt">try</span> <span class="p">{</span>
        <span class="err">HtmlDivision</span> <span class="err">firstChild</span> <span class="err">=</span> <span class="err">page.getFirstByXPath("/html/body/div</span><span class="cp">[</span><span class="mi">7</span><span class="cp">]</span><span class="err">/div")</span><span class="p">;</span>
        <span class="err">page</span> <span class="err">=</span>  <span class="err">firstChild.click()</span><span class="p">;</span>
    <span class="p">}</span> <span class="nt">catch</span> <span class="o">(</span><span class="nt">IOException</span> <span class="nt">e</span><span class="o">)</span> <span class="p">{</span>
        <span class="err">e.printStackTrace()</span><span class="p">;</span>
    <span class="p">}</span>

    <span class="nt">try</span> <span class="p">{</span>
        <span class="err">Thread.sleep(5000)</span><span class="p">;</span>
    <span class="p">}</span> <span class="nt">catch</span> <span class="o">(</span><span class="nt">InterruptedException</span> <span class="nt">e</span><span class="o">)</span> <span class="p">{</span>
        <span class="err">e.printStackTrace()</span><span class="p">;</span>
    <span class="p">}</span>
         <span class="nt">System</span><span class="p">.</span><span class="nc">out</span><span class="p">.</span><span class="nc">println</span><span class="o">(</span><span class="nt">page</span><span class="p">.</span><span class="nc">asXml</span><span class="o">());</span>

     <span class="nt">I</span> <span class="nt">have</span> <span class="nt">attached</span> <span class="nt">the</span> <span class="nt">sample</span> <span class="nt">output</span> <span class="nt">html</span> <span class="nt">file</span> <span class="nt">which</span> <span class="nt">I</span> <span class="nt">am</span> <span class="nt">getting</span> <span class="nt">after</span> <span class="nt">running</span> <span class="nt">the</span> <span class="nt">above</span> <span class="nt">code</span><span class="o">.</span>
</pre></div>


<p>Please help me in finding out the issue with the code. Thanking you in advance.</p>
<p>Regards,<br/>
Abhishek Thakur</p>
<hr/>
<p>Sent from sourceforge.net because [email protected] is subscribed to <a href="https://sourceforge.net/p/htmlunit/bugs/">https://sourceforge.net/p/htmlunit/bugs/</a></p>
<p>To unsubscribe from further messages, a project admin can change settings at <a href="https://sourceforge.net/p/htmlunit/admin/bugs/options.">https://sourceforge.net/p/htmlunit/admin/bugs/options.</a>  Or, if this is a mailing list, you can unsubscribe from the mailing list.</p></div>
--===============3251976941660968558==--
--===============8316009086530157049==--


--===============4101042988303522174==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline


--===============4101042988303522174==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
HtmlUnit-develop mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/htmlunit-develop

--===============4101042988303522174==--