Selenium giving different results2019 Community Moderator ElectionWhat is the difference between @staticmethod and @classmethod?Difference between append vs. extend list methods in PythonDifference between __str__ and __repr__?Why does comparing strings using either '==' or 'is' sometimes produce a different result?What are the differences between type() and isinstance()?Get HTML Source of WebElement in Selenium WebDriver using PythonHow do I find an element that contains specific text in Selenium Webdriver (Python)?innerHTML of multiple elements with the same class namePython Selenium Stale Element Hangs Foreverpython selenium xpath grabbing elements

Why restrict private health insurance?

How to install round brake pads

Finding the minimum value of a function without using Calculus

Writing text next to a table

How do you make a gun that shoots melee weapons and/or swords?

Is it appropriate to ask a former professor to order a book for me through an inter-library loan?

Professor forcing me to attend a conference, I can't afford even with 50% funding

Would those living in a "perfect society" not understand satire

Why do we say 'Pairwise Disjoint', rather than 'Disjoint'?

Translation of 答えを知っている人はいませんでした

I reported the illegal activity of my boss to his boss. My boss found out. Now I am being punished. What should I do?

Leveling the sagging side of the home

Converting from "matrix" data into "coordinate" data

Can one live in the U.S. and not use a credit card?

How to copy the rest of lines of a file to another file

How to write a chaotic neutral protagonist and prevent my readers from thinking they are evil?

What does *dead* mean in *What do you mean, dead?*?

What will happen if my luggage gets delayed?

Do black holes violate the conservation of mass?

"If + would" conditional in present perfect tense

Use Mercury as quenching liquid for swords?

Strange opamp's output impedance in spice

Which country has more?

Trocar background-image com delay via jQuery



Selenium giving different results



2019 Community Moderator ElectionWhat is the difference between @staticmethod and @classmethod?Difference between append vs. extend list methods in PythonDifference between __str__ and __repr__?Why does comparing strings using either '==' or 'is' sometimes produce a different result?What are the differences between type() and isinstance()?Get HTML Source of WebElement in Selenium WebDriver using PythonHow do I find an element that contains specific text in Selenium Webdriver (Python)?innerHTML of multiple elements with the same class namePython Selenium Stale Element Hangs Foreverpython selenium xpath grabbing elements










0















I'm having a bit of an issue using Selenium with python. There is a page I'm scraping, and I'm accessing a children of a parent element. However each time I run the script, it's not always guaranteed that I'll be able to get the children.



So for example, I have:



filters = driver.find_element_by_class_name("classname")

filters_children = filters.find_elements_by_class_name("anotherclassname")


And I print out filters_children[1] just to make sure.



Around 60% it will work fine, and filters_children will have a list of the children elements. However the other 40%, it'll have a NoneType so it won't be able to grab the elements.



I tried using a sleep of up to 10 seconds after the page rendered but that hasn't helped a whole lot.










share|improve this question
























  • Have you tried selecting the element by jspath or xpath, and did that give you the same results?

    – Mike
    Mar 6 at 23:23











  • I have not tried that Mike, I'll try that out thanks!

    – sosa067
    Mar 6 at 23:29











  • Can you post a link to the page?

    – JeffC
    Mar 7 at 1:10















0















I'm having a bit of an issue using Selenium with python. There is a page I'm scraping, and I'm accessing a children of a parent element. However each time I run the script, it's not always guaranteed that I'll be able to get the children.



So for example, I have:



filters = driver.find_element_by_class_name("classname")

filters_children = filters.find_elements_by_class_name("anotherclassname")


And I print out filters_children[1] just to make sure.



Around 60% it will work fine, and filters_children will have a list of the children elements. However the other 40%, it'll have a NoneType so it won't be able to grab the elements.



I tried using a sleep of up to 10 seconds after the page rendered but that hasn't helped a whole lot.










share|improve this question
























  • Have you tried selecting the element by jspath or xpath, and did that give you the same results?

    – Mike
    Mar 6 at 23:23











  • I have not tried that Mike, I'll try that out thanks!

    – sosa067
    Mar 6 at 23:29











  • Can you post a link to the page?

    – JeffC
    Mar 7 at 1:10













0












0








0








I'm having a bit of an issue using Selenium with python. There is a page I'm scraping, and I'm accessing a children of a parent element. However each time I run the script, it's not always guaranteed that I'll be able to get the children.



So for example, I have:



filters = driver.find_element_by_class_name("classname")

filters_children = filters.find_elements_by_class_name("anotherclassname")


And I print out filters_children[1] just to make sure.



Around 60% it will work fine, and filters_children will have a list of the children elements. However the other 40%, it'll have a NoneType so it won't be able to grab the elements.



I tried using a sleep of up to 10 seconds after the page rendered but that hasn't helped a whole lot.










share|improve this question
















I'm having a bit of an issue using Selenium with python. There is a page I'm scraping, and I'm accessing a children of a parent element. However each time I run the script, it's not always guaranteed that I'll be able to get the children.



So for example, I have:



filters = driver.find_element_by_class_name("classname")

filters_children = filters.find_elements_by_class_name("anotherclassname")


And I print out filters_children[1] just to make sure.



Around 60% it will work fine, and filters_children will have a list of the children elements. However the other 40%, it'll have a NoneType so it won't be able to grab the elements.



I tried using a sleep of up to 10 seconds after the page rendered but that hasn't helped a whole lot.







python selenium






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Mar 7 at 1:56









yong

6,8061412




6,8061412










asked Mar 6 at 23:08









sosa067sosa067

11




11












  • Have you tried selecting the element by jspath or xpath, and did that give you the same results?

    – Mike
    Mar 6 at 23:23











  • I have not tried that Mike, I'll try that out thanks!

    – sosa067
    Mar 6 at 23:29











  • Can you post a link to the page?

    – JeffC
    Mar 7 at 1:10

















  • Have you tried selecting the element by jspath or xpath, and did that give you the same results?

    – Mike
    Mar 6 at 23:23











  • I have not tried that Mike, I'll try that out thanks!

    – sosa067
    Mar 6 at 23:29











  • Can you post a link to the page?

    – JeffC
    Mar 7 at 1:10
















Have you tried selecting the element by jspath or xpath, and did that give you the same results?

– Mike
Mar 6 at 23:23





Have you tried selecting the element by jspath or xpath, and did that give you the same results?

– Mike
Mar 6 at 23:23













I have not tried that Mike, I'll try that out thanks!

– sosa067
Mar 6 at 23:29





I have not tried that Mike, I'll try that out thanks!

– sosa067
Mar 6 at 23:29













Can you post a link to the page?

– JeffC
Mar 7 at 1:10





Can you post a link to the page?

– JeffC
Mar 7 at 1:10












1 Answer
1






active

oldest

votes


















0














Your parent class might be too broad and some time you might get a different element, then your second query will fail to find the proper child.



When searching via css selector, you can combine multiple nested class by using spaces between them. You could then combine your nested query into one.



Also I suggest that you use wait until in this case to ensure that the element will be present. Compare to sleep, this will send the request periodically to the page until it finds your request.



from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait

wait = WebDriverWait(driver, '30')
wait.until(EC.presence_of_all_elements_located("css selector", ".classname .anotherclassname")))


If the element also need to be visible, change presence_of_all_elements_located to visibility_of_any_elements_located






share|improve this answer






















    Your Answer






    StackExchange.ifUsing("editor", function ()
    StackExchange.using("externalEditor", function ()
    StackExchange.using("snippets", function ()
    StackExchange.snippets.init();
    );
    );
    , "code-snippets");

    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "1"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );













    draft saved

    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55033629%2fselenium-giving-different-results%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    0














    Your parent class might be too broad and some time you might get a different element, then your second query will fail to find the proper child.



    When searching via css selector, you can combine multiple nested class by using spaces between them. You could then combine your nested query into one.



    Also I suggest that you use wait until in this case to ensure that the element will be present. Compare to sleep, this will send the request periodically to the page until it finds your request.



    from selenium.webdriver.support import expected_conditions as EC
    from selenium.webdriver.support.ui import WebDriverWait

    wait = WebDriverWait(driver, '30')
    wait.until(EC.presence_of_all_elements_located("css selector", ".classname .anotherclassname")))


    If the element also need to be visible, change presence_of_all_elements_located to visibility_of_any_elements_located






    share|improve this answer



























      0














      Your parent class might be too broad and some time you might get a different element, then your second query will fail to find the proper child.



      When searching via css selector, you can combine multiple nested class by using spaces between them. You could then combine your nested query into one.



      Also I suggest that you use wait until in this case to ensure that the element will be present. Compare to sleep, this will send the request periodically to the page until it finds your request.



      from selenium.webdriver.support import expected_conditions as EC
      from selenium.webdriver.support.ui import WebDriverWait

      wait = WebDriverWait(driver, '30')
      wait.until(EC.presence_of_all_elements_located("css selector", ".classname .anotherclassname")))


      If the element also need to be visible, change presence_of_all_elements_located to visibility_of_any_elements_located






      share|improve this answer

























        0












        0








        0







        Your parent class might be too broad and some time you might get a different element, then your second query will fail to find the proper child.



        When searching via css selector, you can combine multiple nested class by using spaces between them. You could then combine your nested query into one.



        Also I suggest that you use wait until in this case to ensure that the element will be present. Compare to sleep, this will send the request periodically to the page until it finds your request.



        from selenium.webdriver.support import expected_conditions as EC
        from selenium.webdriver.support.ui import WebDriverWait

        wait = WebDriverWait(driver, '30')
        wait.until(EC.presence_of_all_elements_located("css selector", ".classname .anotherclassname")))


        If the element also need to be visible, change presence_of_all_elements_located to visibility_of_any_elements_located






        share|improve this answer













        Your parent class might be too broad and some time you might get a different element, then your second query will fail to find the proper child.



        When searching via css selector, you can combine multiple nested class by using spaces between them. You could then combine your nested query into one.



        Also I suggest that you use wait until in this case to ensure that the element will be present. Compare to sleep, this will send the request periodically to the page until it finds your request.



        from selenium.webdriver.support import expected_conditions as EC
        from selenium.webdriver.support.ui import WebDriverWait

        wait = WebDriverWait(driver, '30')
        wait.until(EC.presence_of_all_elements_located("css selector", ".classname .anotherclassname")))


        If the element also need to be visible, change presence_of_all_elements_located to visibility_of_any_elements_located







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Mar 7 at 4:51









        Nic LaforgeNic Laforge

        665




        665





























            draft saved

            draft discarded
















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid …


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55033629%2fselenium-giving-different-results%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Thal And Out Agency railway station See also References External links Navigation menuOfficial Web Site of Pakistan RailwaysArchivedOfficial Web Site of Pakistan Railwayseeexpanding ite

            Posting a File and Associated Data to a RESTful WebService preferably as JSON2019 Community Moderator ElectionREST URI convention - Singular or plural name of resource while creating itUploading both data and files in one form using Ajax?How do I upload a file with metadata using a REST web service?REST API - file (ie images) processing - best practicesSpring: JSON data and file in the same requestREST API Put large dataPosting a file and JSON data to Spring rest serviceRESTful Web Service Upload/Download Large Data With JSONREST API Design sending JSON data and a file to the api in same requestPost JSONArray to REST servicePUT vs. POST in RESTParsing values from a JSON file?JavaScript/jQuery to download file via POST with JSON dataHow do I upload a file with metadata using a REST web service?How to POST JSON data with Curl from Terminal/Commandline to Test Spring REST?Separate REST JSON API server and client?what's the correct way to send a file from REST web service to client?How do I write JSON data to a file?What is “406-Not Acceptable Response” in HTTP?REST API - file (ie images) processing - best practices

            How can I change the color of pagination dots of UIPageControl?How to change UIPageControl dotsIs there a way to change page indicator dots colorCustomize dot with image of UIPageControl at index 0 of UIPageControlNo visible @interface for 'NSObject<PageControlDelegate>' declares the selector 'pageControlPageDidChange:'How to change the color of pagination dots in UIPageControl with a different color per pagepagecontrol indicator custom image instead of DefaultChanging the colour of UIPageControl dots in MonoTouchpagecontrol selectable page visibility color?Alternative way to load ViewControllers on a UIPageControlHow to set only layer.border-color for UIpage control dots in swiftHow can I develop for iPhone using a Windows development machine?How to change the name of an iOS app?UITableView - change section header coloruipagecontrol indicator(dot)issueCustom UIPageControl dots color not changingchange the interspace between UIPageControl dotsHow to change Status Bar text color in iOSHow can I change image tintColor in iOS and WatchKitUIPageControl dots with larger space in between each dotsHow to change the color of pagination dots in UIPageControl with a different color per page