New Update - Explanation Needed

Can someone explain the implications of this new feature. I'm curious what this will allow that formally wasn't allowed

"CSS selector generator now generates selectors that use schema.org attributes, other element attributes, dd:contains() + dt, h1:contains() + *"

@KristapsWS can you throw an example here?

It was possible to use these selectors before this update as well. We only improved precision of the way CSS selectors are generated when you select elements. You can learn more about CSS selector that you can use on Web Scraper here: https://www.webscraper.io/documentation#css-selector . We are planning to release tutorials with use cases on how to use some of the "more advanced" CSS selectors in the near future.

I'm trying to use a CSS selector and when I customize it at all, I can't even get a data or element preview to appear.

On this page, there's a table where a number of dts have multiple dds.

Here's an example:

<dt>
        
            Contributor Names
        
        </dt>
        
        
            
            
                <dd>
                
                
                    
                        Black, Henry W. (Interviewee)
                    
                
                </dd>
            
            
            
                <dd>
                
                
                    
                        Dixon, Fred D. (Interviewer)
                    
                
                </dd>

When I use the text selector on the first dd, it gives me the selector dt:contains(' Contributor Names ') + dd and that works perfectly fine to select the first name. If I alter this to say dt:contains(' Contributor Names ') + dd { ... }, which should (I think?) select every dd for that dt, I don't get any preview window to appear.

Any help would be greatly appreciated, as this is something I've encountered quite a few times and have just given up each time!

Use ~ instead of + as it will select all elements beneath dt not just the next one. If you want to select only contributors, add :not() selector to specify for selector where to stop selecting. Here is the full selector: dt:contains('Contributor Names') ~ dd:not(dt:contains('Contributor Names') ~ dd ~ dt ~ dd) . Use grouped selector if you don't want to generate multiple rows by selecting multiple values.