How to select iframe src?

Cannot get any combination of element attribute to pick up the iframe src data. There appears to be only one iframe on the page.

Tried:
iframe
iframe.wistia_media
iframe.wistia_embed
iframe[name="wistia_media"]
iframe:iframe .wistia_media
...

Example code:
>

        <div class="video_sec"><div id="wistia_video"><iframe data-id="4sgvk9jyc" class="wistia_media" id="wistia_4sgvk9jyc" src="//fast.wistia.net/embed/iframe/4sgvk9jyc" allowtransparency="true" frameborder="0" scrolling="no" class="wistia_embed" name="wistia_embed" allowfullscreen mozallowfullscreen webkitallowfullscreen oallowfullscreen msallowfullscreen width="775" height="436"></iframe>
>

Sitemap:
{"_id":"cf20training","startUrl":["https://www.example.com//programs.php?gid=202"],"selectors":[{"id":"301","type":"SelectorText","parentSelectors":["200"],"selector":"div.title","multiple":false,"regex":".+","delay":0},{"id":"302","type":"SelectorElementAttribute","parentSelectors":["200"],"selector":"iframe[name="wistia_embed"]","multiple":false,"extractAttribute":"src","delay":0},{"id":"001","type":"SelectorLink","parentSelectors":["_root"],"selector":".steps a","multiple":true,"delay":0},{"id":"200","type":"SelectorLink","parentSelectors":["001"],"selector":".dis_table h4 a","multiple":true,"delay":0}]}

If you just want the text in "src" then you can treat that iframe tag like any other regular tag, and just use Element Attribute:
Type:: Element Attribute
Selector: iframe[data-id]
Attribute name: src

Thank you for the response @leemeng , but that just returns 'null' like all my previous attempts.

Why did you choose 'data-id' instead of any other attribute?
How do you know which attribute to choose before the desired one at 'src'?
Is there a way to avoid ambiguity by using the 'Select' tool by clicking on the video?
Right now it picks a high level div tag and it cannot find any child tags.
Should there be a more specific selector for src tags?
Is there a bug?
What else can I try to get any kind of data from the iframe tag?

This is in FF if that makes a difference.

Not sure why it's not working for you. I'm guessing your "src" scraper is child of another element which does not contain the iframe.

You can trying placing the "src" scraper at root level to see it works.

I was using [data-id] just to narrow down the selection. That just means "an iframe which has an data-id attribute (actual data id is not important)". If I wanted to me more specific, I could use something like iframe[data-id^="4sg"] which means "an iframe which has an data-id attribute which starts with 4sg".

Ref: CSS Selector Reference

Ah, so you're saying that I need to add a selector before the iframe?

How can I make sure that happens and that i'm selecting the right element? There doesn't seem to be a way to visualize what's missing/blocking.

Perhaps try an Element selector, click on the video and then pass it on to the iframe selector? Nope, that gets no data as well ;-(

from the code it looks like the parent div is "course_desc" which I tried to add before the iframe selector, but still no data was found.

any other options? This is the last step needed.

The title text picks up fine at the same level selector, but not the "src"

Thanks @leemeng, here's a bit more info from the source page if that helps.

`

<div id="course">
    <div class="container">
        <div class="row">
            <div class="col-lg-9 col-xs-12">
<div id="leftside">
    <div class="title" align="left">Introduction To Twitter</div>
    <div align="left"  id="up-stars" >
        <i class="up-stars-ele">


        </i> 
        <div align="left" id="lesson-star-rating-averge" style="padding: 5px; display: inline-block;"></div>

    </div>
    &nbsp;

    <div style="border-bottom: 1px solid #dadada;"> </div>

    <div class="buybutton buytop" id="buybutton2" style="text-align: center;margin-top:25px;"></div>

    <div class="course_desc">
        <div class="video_sec"><div id="wistia_video"><iframe data-id="4sgvk9jyc" class="wistia_media" id="wistia_4sgvk9jyc" src="//fast.wistia.net/embed/iframe/4sgvk9jyc" allowtransparency="true" frameborder="0" scrolling="no" class="wistia_embed" name="wistia_embed" allowfullscreen mozallowfullscreen webkitallowfullscreen oallowfullscreen msallowfullscreen width="775" height="436"></iframe></div></div>`

{"_id":"cf20training","startUrl":["https://www.example.com//programs.php?gid=202"],"selectors":[{"id":"301","type":"SelectorText","parentSelectors":["200"],"selector":"div.title","multiple":false,"regex":".+","delay":0},{"id":"302","type":"SelectorElement","parentSelectors":["200"],"selector":"div.course_desc","multiple":false,"delay":0},{"id":"001","type":"SelectorLink","parentSelectors":["_root"],"selector":".steps a","multiple":true,"delay":0},{"id":"200","type":"SelectorLink","parentSelectors":["001"],"selector":".dis_table h4 a","multiple":true,"delay":0},{"id":"400","type":"SelectorElementAttribute","parentSelectors":["302"],"selector":"iframe[data-id]","multiple":false,"extractAttribute":"src","delay":0}]}

I may be doing this all wrong, as I was looking at the page source with executed scripts and not the live Inspector. ;-[

Here's a json block that has all the info I need.
the "name" of the video and
the "@id" or "embedUrl"

<script class="w-json-ld" type="application/ld+json">{"@context":"http://schema.org/","@id":"https://fast.wistia.net/embed/iframe/f2vfnlwmj","@type":"VideoObject","duration":"PT53M52S","name":"David - Lesson 1 - Intro and YouTube","thumbnailUrl":"https://embed-ssl.wistia.com/deliveries/b4fb2cf12cdf3b5d8bb1fbbe06f15a9943befa3.jpg?image_crop_resized=960x540","embedUrl":"https://fast.wistia.net/embed/iframe/f2vfnlwmj","uploadDate":"2019-10-08","description":"a lessons / lessons video"}</script>

not sure how to grab those out. Help @leemeng

{"_id":"cf20training","startUrl":["https://www.example.com//programs.php?gid=202"],"selectors":[{"id":"301","type":"SelectorText","parentSelectors":["200"],"selector":"div.title","multiple":false,"regex":".+","delay":0},{"id":"001","type":"SelectorLink","parentSelectors":["_root"],"selector":".steps a","multiple":true,"delay":0},{"id":"200","type":"SelectorLink","parentSelectors":["001"],"selector":".dis_table h4 a","multiple":true,"delay":0},{"id":"302","type":"SelectorElementAttribute","parentSelectors":["200"],"selector":"script.w-json-id","multiple":false,"extractAttribute":"embedUrl","delay":0},{"id":"300","type":"SelectorText","parentSelectors":["200"],"selector":"script.name","multiple":false,"regex":".+","delay":0}]}

300 and 302 don't get any data, 301 does.