【问题标题】:How do you get information from an iframe? (javascript and/or python)如何从 iframe 中获取信息? (javascript和/或python)
【发布时间】:2012-08-09 14:01:42
【问题描述】:

我现在真正了解的唯一编程语言是 python。我对javascript很陌生。现在,我正在尝试制作一个简单的程序,该程序可以通过网站为我收集信息。

在网站上,有一长串指向其他页面的链接。如果您将鼠标悬停在一个附近,则会在显示“Find Dupes”(重复项的缩写)的一侧出现另一个链接。我在页面源中找到了这个:

<a href="javascript:void(0)" onclick="getDuplictes(1020347166, true)">Find Dupes</a>

所以当你点击 javascript 链接时,会弹出一个 iframe:

</div>  
</center>

<div id="ActionDiv" style="position: absolute;z-index: 400; width:400; display:none">

<iframe id="ActionFrame" src="" style="width:400;height:400" scrolling="no"         frameborder="0" ></iframe>
</div>

<div id="DuplicatesDiv" style="position: absolute;z-index: 200; width:600; display:none">
<iframe id="DuplicatesFrame" src="" style="width:600;height:400" scrolling="auto" frameborder="0" ></iframe>
</div>

<script>
function getDuplictes(placeId, findInLoca, feedId){

if(isUndefined(feedId)){
    feedId = 0;
}

if(isUndefined(findInLoca)){
    duplicatesUrl = "/places/duplicates.jsp?inPID=" + placeId + "&inFeedID=" + feedId;
}else{
    duplicatesUrl = "/places/duplicates.jsp?inPID=" + placeId + "&inFindInLoca=" + findInLoca +  "&inFeedID=" + feedId;
}

showFrameDiv( duplicatesUrl, "DuplicatesFrame", "DuplicatesDiv", "LocaBlur")
}
</script>

而且每次点击的链接信息都会有所不同。

我想要做的是以某种方式以一种有组织、可读的形式获取 iframe 中显示的信息,而无需实际打开和使用网络浏览器。我希望能够查看一个 iframe 的内容,决定是否需要它,然后单击下一步查看下一个。每页大约有 100 个“Find Dupes” iframe,可能有 50 页。无论如何,我的主要问题是如何使用python或javascript或其他东西获取特定iframe的内容(我对javascript一无所知......)

谢谢。

【问题讨论】:

    标签: javascript python iframe


    【解决方案1】:

    使用python,您可以使用PyQuery 获取每个锚标记的onclick 属性,使用正则表达式对其进行解析以获取placeId,自己构建/places/duplicates.jsp?inPID= URL,使用requests 加载该 URL 上的内容,然后再次对内容进行 PyQuery 以获取您需要的数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-05-30
      • 1970-01-01
      • 1970-01-01
      • 2014-07-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多