如何将网站从列表加载到浏览

2024-05-23 15:40:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我办公室有一个显示器,我需要显示不同来源的不同图表。有index1.htmlindex2.htmlindex3.html。你知道吗

每个html页面使用不同的css文件,因为html文件加载具有不同图形和iframe大小的不同iframe。你知道吗

我想有一个脚本加载index1.html,60秒后加载index2.html,60秒后再次加载index3.html到浏览器。你知道吗

这可以一直运行到用户终止脚本为止。我怎样才能做到这一点?您会推荐python、bash脚本或JavaScript吗?你知道吗

while(true){

firefox index1.html

sleep 60

#DISPLAY=:0.0 wmctrl -c "Firefox"

firefox index2.html

sleep 60

#DISPLAY=:0.0 wmctrl -c "Firefox"

firefox index3.html

sleep 60

#DISPLAY=:0.0 wmctrl -c "Firefox"

}

Tags: 文件脚本htmldisplay来源sleepfirefox显示器
3条回答

您应该能够使用javascript和jquery来实现这一点。你知道吗

<div id="content">

</div>
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script>
$( document ).ready(function() {
    $("#content").load("index1.html");
});

var counter = 1;
var i = setInterval(function(){
    switch(counter){
    case 0:
    $("#content").load("index1.html");
    break;
    case 1:
    $("#content").load("index2.html");
    break;
    case 2:
    $("#content").load("index3.html");
    break;
    }

    counter++;
    if(counter == 3) {
        counter = 0;
    }
}, 60000);
</script>

我希望这是有用的

如果您只在UI中需要这个功能,那么您可以使用setIntervalfromjavascript来实现您所需要的功能,我在这里实现了一个简单的示例。如果你需要任何模式细节,请告诉我。你知道吗

要获得完整的工作解决方案,请克隆此回购。你知道吗

GIT网址:https://github.com/helloritesh000/how-to-load-websites-from-a-list-alternately-to-browser

<!doctype>
<html>
<body>

<iframe id="ifrm" src="" width="300" height="300"></iframe>

<script type="text/javascript">
    var arraySites = ["index3.html", "index2.html", "index1.html"];
    var counter = 0;
    var interval = setInterval(function(){ var url = arraySites.pop(); console.log(url); LoadIframe(url);} , 10*1000);


function LoadIframe(arrIndex)
{
    if(arrIndex != null && arrIndex != undefined && arrIndex != '')
        document.getElementById('ifrm').src = arrIndex;
    else
        clearInterval(interval);
}
</script>

</body>
</html>

有几种方法可以做到这一点。Python有a built-in module called ^{}可以在默认web浏览器中打开文件或URL:

import webbrowser
import time

filelist = ["index1.html", "index2.html", "index3.html"]
for file in filelist:
    webbrowser.open(file,new=2)
    time.sleep(60)

我只是尝试用一些本地HTML文件的完整路径来替换filelist,这对我很有用。你知道吗

如果您想使用默认浏览器以外的浏览器,也可以进行设置。例如:

firefox_path = r"C:\Program Files (x86)\Mozilla Firefox\firefox.exe"
webbrowser.register('firefox', None, webbrowser.BackgroundBrowser(firefox_path), 1)
webbrowser.get('firefox').open("index.html", new=2)

相关问题 更多 >