如何编写一个python脚本在网页打开之前一直尝试它

2024-07-07 05:50:59 发布

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

我们在等我姐姐的结果。碰巧的是,在印度政府的帮助下,服务器速度慢,流量大。在

所以,我考虑编写一个python程序,一直尝试,直到服务器对Http请求做出响应。但是这个项目:

import urllib
i=1
f = open("C:/Users/DELL/Desktop/neetpg.html",'w')
while(True):
    try:
        page = urllib.urlopen("http://www.nbe.gov.in/asr/neet_pdf/")
        print "Done"
        break
    except:
        print i
        i += 1
        continue
f.write(page.read())

print "check"

但是程序不能正常运行。我试着用facebook.com替换url,它仍然打印出数字。在

此外,我想实现的是,如果服务器响应,网页将加载js和css文件以及html文件,所有这些都应该在浏览器中打开。在

我也从http://docs.python.org/2/library/webbrowser.html得到了一个提示 并将程序改为:

^{pr2}$

但所有这些都是在我默认的web浏览器中打开一个新窗口,并将url设置为给定值,然后“打开它”。同时,打印完成并检查pythonshell。在

尚未收到服务器响应的web浏览器显示could not connect to www.nbe.gov.in。在

如何做到这一点?在

编辑:刚刚看到脸谱网剧本毕竟奏效了。它花了大约15次尝试,然后它发生了。.html文件已正确写入。所有的CSS,可能还有JS。在

为什么它如此,它花了这么多的尝试,而,我可以简单地打开脸谱网从浏览器轻松访问。在


Tags: 文件in程序服务器webhttpurlhtml
1条回答
网友
1楼 · 发布于 2024-07-07 05:50:59

试试selenium。在

这样做的目的是不断打开页面,直到驱动程序看到正确的标题。如果它在那里,只需打破循环,让页面保持打开状态:

from selenium import webdriver


driver = webdriver.Firefox()
while True:
    driver.get("http://www.nbe.gov.in/asr/neet_pdf/")

    if 'NEET-PG' in driver.title:
        break

希望有帮助。在

相关问题 更多 >